Elm_Win_Group(3)

NAME
Elm_Win_Group - Win

SYNOPSIS

  Modules
Inwin

  Data Structures
struct _Elm_Win_Trap

  Typedefs
typedef struct _Elm_Win_Trap Elm_Win_Trap
Trap can be set with elm_win_trap_set() and will intercept the calls to internal ecore_evas with the same name and parameters.

  Enumerations
enum Elm_Win_Indicator_Mode { ELM_WIN_INDICATOR_UNKNOWN = 0, ELM_WIN_INDICATOR_HIDE, ELM_WIN_INDICATOR_SHOW }
In some environments, like phones, you may have an indicator that shows battery status, reception, time etc.
enum Elm_Win_Indicator_Opacity_Mode { ELM_WIN_INDICATOR_OPACITY_UNKNOWN = 0, ELM_WIN_INDICATOR_OPAQUE, ELM_WIN_INDICATOR_TRANSLUCENT, ELM_WIN_INDICATOR_TRANSPARENT }
Defines the opacity modes of indicator that can be shown.
enum Elm_Win_Type { ELM_WIN_UNKNOWN = -1, ELM_WIN_BASIC, ELM_WIN_DIALOG_BASIC, ELM_WIN_DESKTOP, ELM_WIN_DOCK, ELM_WIN_TOOLBAR, ELM_WIN_MENU, ELM_WIN_UTILITY, ELM_WIN_SPLASH, ELM_WIN_DROPDOWN_MENU, ELM_WIN_POPUP_MENU, ELM_WIN_TOOLTIP, ELM_WIN_NOTIFICATION, ELM_WIN_COMBO, ELM_WIN_DND, ELM_WIN_INLINED_IMAGE, ELM_WIN_SOCKET_IMAGE, ELM_WIN_FAKE, ELM_WIN_NAVIFRAME_BASIC }
Defines the types of window that can be created.
enum Elm_Win_Keyboard_Mode { ELM_WIN_KEYBOARD_UNKNOWN = 0, ELM_WIN_KEYBOARD_OFF, ELM_WIN_KEYBOARD_ON, ELM_WIN_KEYBOARD_ALPHA, ELM_WIN_KEYBOARD_NUMERIC, ELM_WIN_KEYBOARD_PIN, ELM_WIN_KEYBOARD_PHONE_NUMBER, ELM_WIN_KEYBOARD_HEX, ELM_WIN_KEYBOARD_TERMINAL, ELM_WIN_KEYBOARD_PASSWORD, ELM_WIN_KEYBOARD_IP, ELM_WIN_KEYBOARD_HOST, ELM_WIN_KEYBOARD_FILE, ELM_WIN_KEYBOARD_URL, ELM_WIN_KEYBOARD_KEYPAD, ELM_WIN_KEYBOARD_J2ME }
The different layouts that can be requested for the virtual keyboard.
enum Elm_Win_Keygrab_Mode { ELM_WIN_KEYGRAB_UNKNOWN = 0, ELM_WIN_KEYGRAB_SHARED = 256, ELM_WIN_KEYGRAB_TOPMOST = 512, ELM_WIN_KEYGRAB_EXCLUSIVE = 1024, ELM_WIN_KEYGRAB_OVERRIDE_EXCLUSIVE = 2048 }
Define the keygrab modes of window.
enum Elm_Win_Move_Resize_Mode { ELM_WIN_MOVE_RESIZE_MOVE = 1, ELM_WIN_MOVE_RESIZE_TOP = 2, ELM_WIN_MOVE_RESIZE_BOTTOM = 4, ELM_WIN_MOVE_RESIZE_LEFT = 8, ELM_WIN_MOVE_RESIZE_RIGHT = 16 }
Define the move or resize mode of window.

  Functions
Eina_Bool elm_win_trap_set (const Elm_Win_Trap *trap)
Sets the trap to be used for internal Ecore_Evas management.
Evas_Object * elm_win_add (Evas_Object *parent, const char *name, Elm_Win_Type type)
Adds a window object.
Evas_Object * elm_win_fake_add (Ecore_Evas *ee)
Creates a fake window object using a pre-existing canvas.
Evas_Object * elm_win_util_standard_add (const char *name, const char *title)
Adds a window object with standard setup.
Evas_Object * elm_win_util_dialog_add (Evas_Object *parent, const char *name, const char *title)
Adds a window object with dialog setup.
Eina_Bool elm_win_autodel_get (const Evas_Object *obj)
Get the window's autodel state.
void elm_win_floating_mode_set (Evas_Object *obj, Eina_Bool floating)
Set the floating mode of a window.
Eina_Bool elm_win_floating_mode_get (const Evas_Object *obj)
Get the floating mode of a window.
void elm_win_norender_push (Evas_Object *obj)
This pushes (increments) the norender counter on the window.
void elm_win_norender_pop (Evas_Object *obj)
This pops (decrements) the norender counter on the window.
int elm_win_norender_get (const Evas_Object *obj)
The returns how many times norender has been pushed on the window.
void elm_win_render (Evas_Object *obj)
This manually asks evas to render the window now.
Ecore_Wl2_Window * elm_win_wl_window_get (const Evas_Object *obj)
Get the Ecore_Wl_Window of an Evas_Object.
Ecore_Win32_Window * elm_win_win32_window_get (const Evas_Object *obj)
Get the Ecore_Win32_Window of an Evas_Object.
void elm_win_wm_rotation_preferred_rotation_set (Evas_Object *obj, int rotation)
Set the preferred rotation value.
void elm_win_resize_object_add (Evas_Object *obj, Evas_Object *subobj)
Add subobj as a resize object of window obj.
void elm_win_resize_object_del (Evas_Object *obj, Evas_Object *subobj)
Delete subobj as a resize object of window obj.
Ecore_X_Window elm_win_xwindow_get (const Evas_Object *obj)
Get the Ecore_X_Window of an Evas_Object.
Ecore_Cocoa_Window * elm_win_cocoa_window_get (const Evas_Object *obj)
Get the Ecore_Cocoa_Window of an Efl.Canvas.Object.
void * elm_win_trap_data_get (const Evas_Object *obj)
Get the trap data associated with a window.
void elm_win_override_set (Evas_Object *obj, Eina_Bool override)
Set the override state of a window.
Eina_Bool elm_win_override_get (const Evas_Object *obj)
Get the override state of a window.
void elm_win_lower (Evas_Object *obj)
Lower a window object.
void elm_win_quickpanel_set (Evas_Object *obj, Eina_Bool quickpanel)
Set a window to be an illume quickpanel window.
Eina_Bool elm_win_quickpanel_get (const Evas_Object *obj)
Get if this window is a quickpanel or not.
void elm_win_quickpanel_zone_set (Evas_Object *obj, int zone)
Set which zone this quickpanel should appear in.
int elm_win_quickpanel_zone_get (const Evas_Object *obj)
Get which zone this quickpanel should appear in.
void elm_win_quickpanel_priority_major_set (Evas_Object *obj, int priority)
Set the major priority of a quickpanel window.
int elm_win_quickpanel_priority_major_get (const Evas_Object *obj)
Get the major priority of a quickpanel window.
void elm_win_quickpanel_priority_minor_set (Evas_Object *obj, int priority)
Set the minor priority of a quickpanel window.
int elm_win_quickpanel_priority_minor_get (const Evas_Object *obj)
Get 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)
Get 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)
Get 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)
Get whether the window is a keyboard.
void elm_win_conformant_set (Evas_Object *obj, Eina_Bool conformant)
Set if this window is an illume conformant window.
Eina_Bool elm_win_conformant_get (const Evas_Object *obj)
Get if this window is an illume conformant window.
void elm_win_wm_rotation_manual_rotation_done_set (Evas_Object *obj, Eina_Bool set)
Set the manual rotation done mode.
Eina_Bool elm_win_wm_rotation_manual_rotation_done_get (const Evas_Object *obj)
Get 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)
Set the rotation of the window.
int elm_win_rotation_get (const Evas_Object *obj)
Get 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)
Query whether window manager supports window rotation or not.
int elm_win_wm_rotation_preferred_rotation_get (const Evas_Object *obj)
Get the preferred rotation value.
void elm_win_screen_position_get (const Evas_Object *obj, int *x, int *y)
Get the screen position of a window.
void elm_win_screen_size_get (const Evas_Object *obj, int *x, int *y, int *w, int *h)
Get 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)
Get screen dpi for the screen that a window is on.
void elm_win_icon_name_set (Evas_Object *obj, const char *icon_name)
Set the icon name of the window.
const char * elm_win_icon_name_get (const Evas_Object *obj)
Get the icon name of the window.
void elm_win_withdrawn_set (Evas_Object *obj, Eina_Bool withdrawn)
Set the withdrawn state of a window.
Eina_Bool elm_win_withdrawn_get (const Evas_Object *obj)
Get the withdrawn state of a window.
void elm_win_urgent_set (Evas_Object *obj, Eina_Bool urgent)
Set the urgent state of a window.
Eina_Bool elm_win_urgent_get (const Evas_Object *obj)
Get the urgent state of a window.
void elm_win_demand_attention_set (Evas_Object *obj, Eina_Bool demand_attention)
Set the demand_attention state of a window.
Eina_Bool elm_win_demand_attention_get (const Evas_Object *obj)
Get the demand_attention state of a window.
void elm_win_modal_set (Evas_Object *obj, Eina_Bool modal)
Set the modal state of a window.
Eina_Bool elm_win_modal_get (const Evas_Object *obj)
Get the modal state of a window.
void elm_win_shaped_set (Evas_Object *obj, Eina_Bool shaped)
Set the shaped state of a window.
Eina_Bool elm_win_shaped_get (const Evas_Object *obj)
Get the shaped state of a window.
void elm_win_title_set (Evas_Object *obj, const char *title)
Set the title of the window.
const char * elm_win_title_get (const Evas_Object *obj)
Get the title of the window.
void elm_win_size_base_set (Evas_Object *obj, int w, int h)
Set the base window size used with stepping calculation.
void elm_win_size_base_get (const Evas_Object *obj, int *w, int *h)
Get the base size of a window.
void elm_win_size_step_set (Evas_Object *obj, int w, int h)
Set the window stepping used with sizing calculation.
void elm_win_size_step_get (const Evas_Object *obj, int *w, int *h)
Get the stepping of a window.
void elm_win_illume_command_send (Evas_Object *obj, Elm_Illume_Command command, void *params)
Send a command to the windowing environment.
void elm_win_profile_set (Evas_Object *obj, const char *profile)
Set the profile of a window.
const char * elm_win_profile_get (const Evas_Object *obj)
Get the profile of a window.
void elm_win_layer_set (Evas_Object *obj, int layer)
Set the layer of the window.
int elm_win_layer_get (const Evas_Object *obj)
Get the layer of the window.
Evas_Object * elm_win_inlined_image_object_get (const Evas_Object *obj)
Get the inlined image object handle.
void elm_win_fake_canvas_set (Evas_Object *obj, Ecore_Evas *oee) EINA_DEPRECATED
Internal.
Ecore_Window elm_win_window_id_get (const Evas_Object *obj)
Get the Ecore_Window of an Evas_Object.
Evas_Object * elm_win_main_menu_get (Evas_Object *obj)
Get the Main Menu of a window.
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)
Get the keyboard mode of the window.
Eina_Bool elm_win_socket_listen (Elm_Win *obj, const char *svcname, int svcnum, Eina_Bool svcsys)
Create a socket to provide the service for Plug widget.
Eina_Bool elm_win_focus_get (const Elm_Win *obj)
Get whether a window has focus.
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)
Set the array of available profiles to a window.
Eina_Bool elm_win_available_profiles_get (const Elm_Win *obj, char ***profiles, unsigned int *count)
Get 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)
Set the array of available window rotations.
Eina_Bool elm_win_wm_rotation_available_rotations_get (const Elm_Win *obj, int **rotations, unsigned int *count)
Get the array of available window rotations.
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_Object * elm_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.
const char * elm_win_name_get (const Evas_Object *obj)
The window name.
Elm_Win_Type elm_win_type_get (const Evas_Object *obj)
The type of the window.
const char * elm_win_accel_preference_get (const Evas_Object *obj)
The hardware acceleration preference for this 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.
Eina_Bool elm_win_move_resize_start (Evas_Object *obj, Elm_Win_Move_Resize_Mode mode)
Start moving or resizing the window.
void elm_win_focus_highlight_animate_set (Elm_Win *obj, Eina_Bool animate)
Set the animate status for the focus highlight for this window.
Eina_Bool elm_win_focus_highlight_animate_get (const Elm_Win *obj)
Get the animate value of the focus highlight for this window.
void elm_win_focus_highlight_enabled_set (Elm_Win *obj, Eina_Bool enabled)
Set the enabled status for the focus highlight in a window.
Eina_Bool elm_win_focus_highlight_enabled_get (const Elm_Win *obj)
Get the enabled value of the focus highlight for this window.
Eina_Bool elm_win_focus_highlight_style_set (Elm_Win *obj, const char *style)
Set the style for the focus highlight on this window.
const char * elm_win_focus_highlight_style_get (const Elm_Win *obj)
Get the style set for the focus highlight object.
void elm_win_autodel_set (Evas_Object *obj, Eina_Bool autodel)
Set the window's autodel state.

Detailed Description

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.

•
•
•
•
•
•
•
•
•
•
•
•
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:
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:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
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:
•   Win - General API overview

Typedef Documentation

  Elm_Win_Trap
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
    1.7

Enumeration Type Documentation

  enum Elm_Win_Indicator_Mode
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

  enum Elm_Win_Indicator_Opacity_Mode
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. Transparentizes the indicator

  enum Elm_Win_Type
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_INLINED_IMAGE
    The window is an image.
ELM_WIN_SOCKET_IMAGE
    The window is an image received through a socket.
ELM_WIN_FAKE
    See elm_win_fake_add().
Since
    1.13
ELM_WIN_NAVIFRAME_BASIC
    Used for naviframe style replacement with a back button instead of a close button.
Since
    1.19

  enum Elm_Win_Keyboard_Mode
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.

  enum Elm_Win_Keygrab_Mode
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

  enum Elm_Win_Move_Resize_Mode
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
    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.

Function Documentation

  Eina_Bool elm_win_trap_set (const Elm_Win_Trap * trap)
Sets the trap to be used for internal Ecore_Evas management.
Parameters
    trap the 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
    1.7
References DBG, EINA_FALSE, and EINA_TRUE.

  void elm_win_autodel_set (Evas_Object * obj, Eina_Bool autodel)
Set the window's autodel 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 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
    obj The object.
    autodel If true, the window will automatically delete itself when closed.

  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
    parent Parent object to add the window to, or NULL
    name The name of the window
    type The 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
References ELM_WIN_INLINED_IMAGE, and ELM_WIN_SOCKET_IMAGE.
Referenced by elm_quicklaunch_seed().

  Evas_Object* elm_win_fake_add (Ecore_Evas * ee)
Creates a fake window object using a pre-existing canvas.
Parameters
    ee The 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
    1.13

  Evas_Object* elm_win_util_standard_add (const char * name, const char * title)
Adds a window object with standard setup.
Parameters
    name The name of the window
    title The 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()

  Evas_Object* elm_win_util_dialog_add (Evas_Object * parent, const char * name, const char * title)
Adds a window object with dialog setup.
Parameters
    parent The parent window
    name The name of the window
    title The 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
    1.13

  Eina_Bool elm_win_autodel_get (const Evas_Object * obj)
Get the window's autodel state.
Parameters
    obj The object.
Returns
    If true, the window will automatically delete itself when closed.
References EINA_FALSE.

  void elm_win_floating_mode_set (Evas_Object * obj, Eina_Bool floating)
Set the floating mode of a window.
Parameters
    obj The window object
    floating If 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
    1.8

  Eina_Bool elm_win_floating_mode_get (const Evas_Object * obj)
Get the floating mode of a window.
Parameters
    obj The window object
Returns
    If true, the window is floating mode
See also
    elm_win_floating_mode_set()
Since
    1.8
References EINA_FALSE.

  void elm_win_norender_push (Evas_Object * obj)
This pushes (increments) the norender counter on the window.
Parameters
    obj The 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
    1.7
References ecore_evas_manual_render_set(), and EINA_TRUE.

  void elm_win_norender_pop (Evas_Object * obj)
This pops (decrements) the norender counter on the window.
Parameters
    obj The 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
    1.7
References ecore_evas_manual_render_set(), and EINA_FALSE.

  int elm_win_norender_get (const Evas_Object * obj)
The returns how many times norender has been pushed on the window.
Parameters
    obj The 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
    1.7

  void elm_win_render (Evas_Object * obj)
This manually asks evas to render the window now.
Parameters
    obj The 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
    1.7
References ecore_evas_manual_render().

  Ecore_Wl2_Window* elm_win_wl_window_get (const Evas_Object * obj)
Get the Ecore_Wl_Window of an Evas_Object. Get the Ecore_Wl2_Window of an Evas_Object.
Do not use this function if you'd like your application/library be portable. You have been warned.
Parameters
    obj the object
Returns
    The Ecore_Wl_Window of obj
    The Ecore_Wl2_Window of obj.
Get the Ecore_Wl_Window of an Evas_Object.
Returns
    The Ecore_Wl2_Window of obj.
References ecore_evas_ecore_evas_get(), evas_object_evas_get(), and evas_object_smart_type_check_ptr().

  Ecore_Win32_Window* elm_win_win32_window_get (const Evas_Object * obj)
Get the Ecore_Win32_Window of an Evas_Object. Do not use this function if you'd like your application/library be portable. You have been warned.
Parameters
    obj the object
Returns
    The Ecore_Win32_Window of obj
Since
    1.16
Returns
    The Ecore_Win32_Window of obj.
Since
    1.17
References ecore_evas_ecore_evas_get(), ecore_evas_engine_name_get(), evas_object_evas_get(), and evas_object_smart_type_check_ptr().

  void elm_win_wm_rotation_preferred_rotation_set (Evas_Object * obj, int rotation)
Set the preferred rotation value. This function is used to set the orientation of window obj to specific angle fixed.
Parameters
    obj The window object
    rotation The preferred rotation of the window in degrees (0-360), counter-clockwise.
See also
    elm_win_wm_rotation_preferred_rotation_get()
Since
    1.9
References ecore_evas_wm_rotation_preferred_rotation_set(), and EINA_TRUE.

  void elm_win_resize_object_add (Evas_Object * obj, Evas_Object * subobj)
Add 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
    subobj The resize object to add.
References ERR, and evas_object_box_append().
Referenced by elm_quicklaunch_seed().

  void elm_win_resize_object_del (Evas_Object * obj, Evas_Object * subobj)
Delete 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
    subobj The resize object to add.
References ERR, and evas_object_box_remove().

  Ecore_Cocoa_Window* elm_win_cocoa_window_get (const Evas_Object * obj)
Get the Ecore_Cocoa_Window of an Efl.Canvas.Object.
Returns
    The Ecore_Cocoa_Window of obj.
Since
    1.17
References ecore_evas_ecore_evas_get(), and evas_object_evas_get().

  void* elm_win_trap_data_get (const Evas_Object * obj)
Get the trap data associated with a window.
Returns
    The trap data of the window.
Since
    1.12

  void elm_win_override_set (Evas_Object * obj, Eina_Bool override)
Set 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
    override If true, the window is overridden.

  Eina_Bool elm_win_override_get (const Evas_Object * obj)
Get the override state of a window.
Returns
    If true, the window is overridden.
References ecore_evas_override_get(), and EINA_FALSE.

  void elm_win_lower (Evas_Object * obj)
Lower 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.

  void elm_win_quickpanel_set (Evas_Object * obj, Eina_Bool quickpanel)
Set a window to be an illume quickpanel window. By default window objects are not quickpanel windows.
Parameters
    quickpanel The quickpanel flag.

  Eina_Bool elm_win_quickpanel_get (const Evas_Object * obj)
Get if this window is a quickpanel or not.
Returns
    The quickpanel flag.
References EINA_FALSE.

  void elm_win_quickpanel_zone_set (Evas_Object * obj, int zone)
Set which zone this quickpanel should appear in.
Parameters
    zone The requested zone for this quickpanel.

  int elm_win_quickpanel_zone_get (const Evas_Object * obj)
Get which zone this quickpanel should appear in.
Returns
    The requested zone for this quickpanel.

  void elm_win_quickpanel_priority_major_set (Evas_Object * obj, int priority)
Set the major priority of a quickpanel window.
Parameters
    priority The major priority for this quickpanel or -1.

  int elm_win_quickpanel_priority_major_get (const Evas_Object * obj)
Get the major priority of a quickpanel window.
Returns
    The major priority for this quickpanel or -1.

  void elm_win_quickpanel_priority_minor_set (Evas_Object * obj, int priority)
Set the minor priority of a quickpanel window.
Parameters
    priority The minor priority for this quickpanel.

  int elm_win_quickpanel_priority_minor_get (const Evas_Object * obj)
Get the minor priority of a quickpanel window.
Returns
    The minor priority for this quickpanel.

  void elm_win_indicator_mode_set (Evas_Object * obj, Elm_Win_Indicator_Mode mode)
Sets the indicator mode of the window.
Parameters
    mode The mode, one of Elm_Win_Indicator_Mode.
References ELM_WIN_INDICATOR_SHOW.

  Elm_Win_Indicator_Mode elm_win_indicator_mode_get (const Evas_Object * obj)
Get the indicator mode of the window.
Returns
    The mode, one of Elm_Win_Indicator_Mode.

  void elm_win_indicator_opacity_set (Evas_Object * obj, Elm_Win_Indicator_Opacity_Mode mode)
Sets the indicator opacity mode of the window.
Parameters
    mode The mode, one of Elm_Win_Indicator_Opacity_Mode.
References ELM_WIN_INDICATOR_OPAQUE.

  Elm_Win_Indicator_Opacity_Mode elm_win_indicator_opacity_get (const Evas_Object * obj)
Get the indicator opacity mode of the window.
Returns
    The mode, one of Elm_Win_Indicator_Opacity_Mode.

  void elm_win_keyboard_win_set (Evas_Object * obj, Eina_Bool is_keyboard)
Sets whether the window is a keyboard.
Parameters
    is_keyboard If true, the window is a virtual keyboard..

  Eina_Bool elm_win_keyboard_win_get (const Evas_Object * obj)
Get whether the window is a keyboard.
Returns
    The mode, If true, the window is a virtual keyboard..
References EINA_FALSE.

  void elm_win_conformant_set (Evas_Object * obj, Eina_Bool conformant)
Set if this window is an illume conformant window.
Parameters
    conformant The conformant flag.

  Eina_Bool elm_win_conformant_get (const Evas_Object * obj)
Get if this window is an illume conformant window.
Returns
    The conformant flag.
References EINA_FALSE.

  void elm_win_wm_rotation_manual_rotation_done_set (Evas_Object * obj, Eina_Bool set)
Set 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
    set true to set manual rotation done mode, false otherwise.
Since
    1.9
References ecore_evas_wm_rotation_manual_rotation_done_set().

  Eina_Bool elm_win_wm_rotation_manual_rotation_done_get (const Evas_Object * obj)
Get 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
    1.9
References ecore_evas_wm_rotation_manual_rotation_done_get(), and EINA_FALSE.

  void elm_win_wm_rotation_manual_rotation_done (Evas_Object * obj)
To notify the rotation done to WM manually. This function is used to notify the rotation done to WM manually.
Since
    1.9
References ecore_evas_wm_rotation_manual_rotation_done().

  void elm_win_rotation_set (Evas_Object * obj, int rotation)
Set 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
    rotation The rotation of the window, in degrees (0-360), counter-clockwise.

  int elm_win_rotation_get (const Evas_Object * obj)
Get the rotation of the window.
Returns
    The rotation of the window, in degrees (0-360), counter-clockwise.
References EINA_SAFETY_ON_NULL_RETURN_VAL.

  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
    rotation The rotation of the window in degrees (0-360), counter-clockwise.
References EINA_TRUE.

  Eina_Bool elm_win_wm_rotation_supported_get (const Evas_Object * obj)
Query 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
    1.9
References EINA_FALSE.

  int elm_win_wm_rotation_preferred_rotation_get (const Evas_Object * obj)
Get 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
    1.9

  void elm_win_screen_position_get (const Evas_Object * obj, int * x, int * y)
Get the screen position of a window.
Parameters
    x The int to store the x coordinate to.
    y The int to store the y coordinate to.

  void elm_win_screen_size_get (const Evas_Object * obj, int * x, int * y, int * w, int * h)
Get screen geometry details for the screen that a window is on.
Parameters
    x Where to return the horizontal offset value. May be null.
    y Where to return the vertical offset value. May be null.
    w Where to return the width value. May be null.
    h Where to return the height value. May be null.
References ecore_evas_screen_geometry_get().

  void elm_win_screen_dpi_get (const Evas_Object * obj, int * xdpi, int * ydpi)
Get screen dpi for the screen that a window is on.
Parameters
    xdpi Pointer to value to store return horizontal dpi. May be null.
    ydpi Pointer to value to store return vertical dpi. May be null.
Since
    1.7
References ecore_evas_screen_dpi_get().

  void elm_win_icon_name_set (Evas_Object * obj, const char * icon_name)
Set the icon name of the window.
Parameters
    icon_name The icon name to set.
References eina_stringshare_replace().

  const char* elm_win_icon_name_get (const Evas_Object * obj)
Get 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.

  void elm_win_withdrawn_set (Evas_Object * obj, Eina_Bool withdrawn)
Set the withdrawn state of a window.
Parameters
    withdrawn If true, the window is withdrawn.

  Eina_Bool elm_win_withdrawn_get (const Evas_Object * obj)
Get the withdrawn state of a window.
Returns
    If true, the window is withdrawn.
References ecore_evas_override_get(), EINA_FALSE, and evas_object_visible_get().

  void elm_win_urgent_set (Evas_Object * obj, Eina_Bool urgent)
Set the urgent state of a window.
Parameters
    urgent If true, the window is urgent.

  Eina_Bool elm_win_urgent_get (const Evas_Object * obj)
Get the urgent state of a window.
Returns
    If true, the window is urgent.
References EINA_FALSE.

  void elm_win_demand_attention_set (Evas_Object * obj, Eina_Bool demand_attention)
Set the demand_attention state of a window.
Parameters
    demand_attention If true, the window is demand_attention.

  Eina_Bool elm_win_demand_attention_get (const Evas_Object * obj)
Get the demand_attention state of a window.
Returns
    If true, the window is demand_attention.
References EINA_FALSE.

  void elm_win_modal_set (Evas_Object * obj, Eina_Bool modal)
Set the modal state of a window.
Parameters
    modal If true, the window is modal.

  Eina_Bool elm_win_modal_get (const Evas_Object * obj)
Get the modal state of a window.
Returns
    If true, the window is modal.

  void elm_win_shaped_set (Evas_Object * obj, Eina_Bool shaped)
Set 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
    shaped If true, the window is shaped.

  Eina_Bool elm_win_shaped_get (const Evas_Object * obj)
Get the shaped state of a window.
Returns
    If true, the window is shaped.
References ecore_evas_shaped_get(), and EINA_FALSE.

  void elm_win_title_set (Evas_Object * obj, const char * title)
Set the title of the window.
Parameters
    title The title.

  const char* elm_win_title_get (const Evas_Object * obj)
Get 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.

  void elm_win_size_base_set (Evas_Object * obj, int w, int h)
Set the base window size used with stepping calculation. Base size + stepping is what is calculated for window sizing restrictions.
Parameters
    w The base width.
    h The base height.
Since
    1.7
References EINA_SIZE2D.

  void elm_win_size_base_get (const Evas_Object * obj, int * w, int * h)
Get the base size of a window.
Parameters
    w The base width.
    h The base height.
Since
    1.7

  void elm_win_size_step_set (Evas_Object * obj, int w, int h)
Set the window stepping used with sizing calculation. Base size + stepping is what is calculated for window sizing restrictions.
Parameters
    w The stepping width (0 disables).
    h The stepping height (0 disables).
Since
    1.7
References EINA_SIZE2D.

  void elm_win_size_step_get (const Evas_Object * obj, int * w, int * h)
Get the stepping of a window.
Parameters
    w The stepping width (0 disables).
    h The stepping height (0 disables).
Since
    1.7

  void elm_win_illume_command_send (Evas_Object * obj, Elm_Illume_Command command, void * params)
Send 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
    params Optional parameters for the command.

  void elm_win_profile_set (Evas_Object * obj, const char * profile)
Set the profile of a window.
Parameters
    profile The string value of a window profile.
Since
    1.8
References ecore_evas_window_profile_set(), ecore_evas_window_profile_supported_get(), and eina_array_count().

  const char* elm_win_profile_get (const Evas_Object * obj)
Get the profile of a window.
Returns
    The string value of a window profile.
Since
    1.8

  void elm_win_layer_set (Evas_Object * obj, int layer)
Set 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
    layer The layer of the window.

  int elm_win_layer_get (const Evas_Object * obj)
Get the layer of the window.
Returns
    The layer of the window.
References ecore_evas_layer_get().

  Evas_Object* elm_win_inlined_image_object_get (const Evas_Object * obj)
Get 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.
Referenced by elm_object_focus_set().

  void elm_win_fake_canvas_set (Evas_Object * obj, Ecore_Evas * oee)
Internal. Used to complete the fake window type.
Parameters
    oee
Deprecated
References ERR.

  Ecore_Window elm_win_window_id_get (const Evas_Object * obj)
Get 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
    obj The window object
Returns
    The Ecore_Window of an Evas_Object
Since
    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.
References ecore_evas_ecore_evas_get(), ecore_evas_window_get(), evas_object_evas_get(), and evas_object_smart_type_check_ptr().

  Evas_Object* elm_win_main_menu_get (Evas_Object * obj)
Get the Main Menu of a window.
Returns
    The Main Menu of the window ($null on error).
References EINA_FALSE, EINA_TRUE, and elm_menu_add().

  void elm_win_keyboard_mode_set (Elm_Win * obj, Elm_Win_Keyboard_Mode mode)
Sets the keyboard mode of the window.
Parameters
    mode The mode, one of Elm_Win_Keyboard_Mode.

  Elm_Win_Keyboard_Mode elm_win_keyboard_mode_get (const Elm_Win * obj)
Get the keyboard mode of the window.
Returns
    The mode, one of Elm_Win_Keyboard_Mode.

  Eina_Bool elm_win_socket_listen (Elm_Win * obj, const char * svcname, int svcnum, Eina_Bool svcsys)
Create a socket to provide the service for Plug widget.
Parameters
    svcname The name of the service to be advertised. Eensure that it is unique (when combined with svcnum) otherwise creation may fail.
    svcnum A number (any value, 0 being the common default) to differentiate multiple instances of services with the same name.
    svcsys A 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

  Eina_Bool elm_win_focus_get (const Elm_Win * obj)
Get whether a window has focus.
Returns
    true if window has focus, false otherwise

  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.

  void elm_win_available_profiles_set (Elm_Win * obj, const char ** profiles, unsigned int count)
Set the array of available profiles to a window.
Parameters
    profiles The string array of available profiles.
    count The number of members in profiles.
Since
    1.8
References eina_array_free(), eina_array_new(), and eina_array_push().

  Eina_Bool elm_win_available_profiles_get (const Elm_Win * obj, char *** profiles, unsigned int * count)
Get the array of available profiles of a window.
Parameters
    profiles The string array of available profiles.
    count The number of members in profiles.
Returns
    true on success, false otherwise
Since
    1.8
References _Eina_Array::count, _Eina_Array::data, EINA_FALSE, and EINA_TRUE.

  void elm_win_wm_rotation_available_rotations_set (Elm_Win * obj, const int * rotations, unsigned int count)
Set 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
    obj The object.
    rotations The array of rotation value.
    count The size of the rotations array.
Since
    1.9
References EINA_TRUE.

  Eina_Bool elm_win_wm_rotation_available_rotations_get (const Elm_Win * obj, int ** rotations, unsigned int * count)
Get the array of available window rotations. This function is used to get the available rotations.
Parameters
    obj The object.
    rotations The array of rotation value.
    count The size of the rotations array.
Returns
    true on success, false otherwise
Since
    1.9
References EINA_FALSE, and EINA_TRUE.

  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
    obj The object.
    constrain true to restrict the window's maximum size.

  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. When this function returns true, obj will never resize larger than the screen.
Parameters
    obj The object.
Returns
    true to restrict the window's maximum size.

  void elm_win_prop_focus_skip_set (Evas_Object * obj, Eina_Bool skip)
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
    obj The object.
    skip The skip flag state ($true if it is to be skipped).

  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
    obj The object.
    autohide If true, the window will automatically hide itself when closed.

  Eina_Bool elm_win_autohide_get (const Evas_Object * obj)
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
    obj The object.
Returns
    If true, the window will automatically hide itself when closed.

  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
    obj The object.
    icon The image object to use for an icon.

  const Evas_Object* elm_win_icon_object_get (const Evas_Object * obj)
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
    obj The object.
Returns
    The Evas image object to use for an icon.

  void elm_win_iconified_set (Evas_Object * obj, Eina_Bool iconified)
Set the iconified state of a window.
Parameters
    obj The object.
    iconified If true, the window is iconified.

  Eina_Bool elm_win_iconified_get (const Evas_Object * obj)
Get the iconified state of a window.
Parameters
    obj The object.
Returns
    If true, the window is iconified.

  void elm_win_maximized_set (Evas_Object * obj, Eina_Bool maximized)
Set the maximized state of a window.
Parameters
    obj The object.
    maximized If true, the window is maximized.

  Eina_Bool elm_win_maximized_get (const Evas_Object * obj)
Get the maximized state of a window.
Parameters
    obj The object.
Returns
    If true, the window is maximized.

  void elm_win_fullscreen_set (Evas_Object * obj, Eina_Bool fullscreen)
Set the fullscreen state of a window.
Parameters
    obj The object.
    fullscreen If true, the window is fullscreen.

  Eina_Bool elm_win_fullscreen_get (const Evas_Object * obj)
Get the fullscreen state of a window.
Parameters
    obj The object.
Returns
    If true, the window is fullscreen.

  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
    obj The object.
    sticky If true, the window's sticky state is enabled.

  Eina_Bool elm_win_sticky_get (const Evas_Object * obj)
Get the sticky state of the window.
Parameters
    obj The object.
Returns
    If true, the window's sticky state is enabled.

  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
    obj The object.
    noblank If true, the window is set to noblank.
Since
    1.11
References EINA_SAFETY_ON_NULL_RETURN.

  Eina_Bool elm_win_noblank_get (const Evas_Object * obj)
Get the noblank property of a window.
Parameters
    obj The object.
Returns
    If true, the window is set to noblank.
Since
    1.11
References EINA_FALSE, and EINA_SAFETY_ON_NULL_RETURN_VAL.

  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
    obj The object.
    borderless If true, the window is borderless.

  Eina_Bool elm_win_borderless_get (const Evas_Object * obj)
Get the borderless state of a window.
Parameters
    obj The object.
Returns
    If true, the window is borderless.

  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
    obj The object.
    role The role to set.

  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
    obj The object.
Returns
    The role to set.

  const char* elm_win_name_get (const Evas_Object * obj)
The window name. The meaning of name depends on the underlying windowing system.
The window name 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 afterwards.
No description supplied.
Parameters
    obj The object.
Returns
    Window name
Since
    1.18

  Elm_Win_Type elm_win_type_get (const Evas_Object * obj)
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
    obj The object.
Returns
    Window type
References ELM_WIN_UNKNOWN.

  const char* elm_win_accel_preference_get (const Evas_Object * obj)
The hardware acceleration preference for this window. This is a constructor function and can only be called before Efl.Object.finalize.
This property overrides the global EFL configuration option 'accel_preference' for this single window, and accepts the same syntax.
The accel string is a freeform C string that indicates what kind of acceleration is preferred. Here 'acceleration' generally refers to rendering and the hardware with which the unit application renders GUIs. This may or may not be honored but a best attempt will be made. Known strings are as follows:
•   use no acceleration but software instead (since 1.16)
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 guaranteed 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:
Note that this option may be overriden by environment variables or the configuration option 'accel_preference_override'.
This will return the value of 'accel_preference' when the window was created.
Parameters
    obj The object.
Returns
    Acceleration
Since
    1.18

  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
    obj The object.
    alpha true if the window alpha channel is enabled, false otherwise.

  Eina_Bool elm_win_alpha_get (const Evas_Object * obj)
Get the alpha channel state of a window.
Parameters
    obj The object.
Returns
    true if the window alpha channel is enabled, false otherwise.

  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
    obj The object.

  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
    obj The object.
    h If true, center horizontally. If false, do not change horizontal location.
    v If true, center vertically. If false, do not change vertical location.

  Eina_Bool elm_win_move_resize_start (Evas_Object * obj, Elm_Win_Move_Resize_Mode mode)
Start moving or resizing the window. The user can request the display server to start moving or resizing the window by combining modes from Efl_Ui_Win_Move_Resize_Mode. This API can only be called if none of the following conditions is true:
1.  Called in the absence of a pointer down event, 2. Called more than once before a pointer up event, 3. Called when the window is already being resized or moved, 4. Called with an unsupported combination of modes.
Right usage: 1. Pointer (mouse or touch) down event, 2. elm_win_move_resize_start called only once with a supported mode, 3. Pointer (mouse or touch) up event.
If a pointer up event occurs after calling the function, it automatically ends the window move and resize operation.
Currently, only the following 9 combinations are allowed, and possibly more combinations may be added in the future: 1. ELM_WIN_MOVE_RESIZE_MOVE
2.  ELM_WIN_MOVE_RESIZE_TOP 3. ELM_WIN_MOVE_RESIZE_BOTTOM 4. ELM_WIN_MOVE_RESIZE_LEFT 5. ELM_WIN_MOVE_RESIZE_RIGHT 6. ELM_WIN_MOVE_RESIZE_TOP | ELM_WIN_MOVE_RESIZE_LEFT 7. ELM_WIN_MOVE_RESIZE_TOP | ELM_WIN_MOVE_RESIZE_RIGHT 8. ELM_WIN_MOVE_RESIZE_BOTTOM | ELM_WIN_MOVE_RESIZE_LEFT 9. ELM_WIN_MOVE_RESIZE_BOTTOM | ELM_WIN_MOVE_RESIZE_RIGHT
In particular move and resize cannot happen simultaneously.
Note
    the result of this API can only guarantee that the request has been forwarded to the server, but there is no guarantee that the request can be processed by the display server.
Parameters
    obj The object.
    mode The requested move or resize mode.
Returns
    true if the request was successfully sent to the display server, false in case of error.
Since
    1.19

  void elm_win_focus_highlight_animate_set (Elm_Win * obj, Eina_Bool animate)
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, regardless of the global setting for it.
Parameters
    animate The enabled value for the highlight animation.

  Eina_Bool elm_win_focus_highlight_animate_get (const Elm_Win * obj)
Get the animate value of the focus highlight for this window.
Returns
    The enabled value for the highlight animation.

  void elm_win_focus_highlight_enabled_set (Elm_Win * obj, Eina_Bool enabled)
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
    enabled The enabled value for the highlight.
Examples
general_funcs_example.c, panes_example.c, and win_example.c.

  Eina_Bool elm_win_focus_highlight_enabled_get (const Elm_Win * obj)
Get the enabled value of the focus highlight for this window.
Returns
    The enabled value for the highlight.

  Eina_Bool elm_win_focus_highlight_style_set (Elm_Win * obj, const char * style)
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
    style The style or null if none.
Referenced by elm_object_focus_highlight_style_set().

  const char* elm_win_focus_highlight_style_get (const Elm_Win * obj)
Get the style set for the focus highlight object.
Returns
    The style or null if none.
Referenced by elm_object_focus_highlight_style_get().

Author
Generated automatically by Doxygen for EFL from the source code.