Ecore_Win32 library

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

Data Structures | Typedefs | Enumerations | Functions | Variables
Ecore_Win32 library
Ecore

Ecore_Win32 is a library that wraps Windows graphic functions and integrate them nicely into the Ecore main loop. More...

## Data Structures
struct | _Ecore_Win32_Event_Mouse_In
| Event sent when the mouse enters the window. More...
struct | _Ecore_Win32_Event_Mouse_Out
| Event sent when the mouse leaves the window. More...
struct | _Ecore_Win32_Event_Window_Focus_In
| Event sent when the window gets the focus. More...
struct | _Ecore_Win32_Event_Window_Focus_Out
| Event sent when the window looses the focus. More...
struct | _Ecore_Win32_Event_Window_Damage
| Event sent when the window is damaged. More...
struct | _Ecore_Win32_Event_Window_Create
| Event sent when the window is created. More...
struct | _Ecore_Win32_Event_Window_Destroy
| Event sent when the window is destroyed. More...
struct | _Ecore_Win32_Event_Window_Hide
| Event sent when the window is hidden. More...
struct | _Ecore_Win32_Event_Window_Show
| Event sent when the window is shown. More...
struct | _Ecore_Win32_Event_Window_Configure
| Event sent when the window is configured. More...
struct | _Ecore_Win32_Event_Window_Resize
| Event sent when the window is resized. More...
struct | _Ecore_Win32_Event_Window_Delete_Request
| Event sent when the window is deleted. More...
struct | _Ecore_Win32_Event_Selection_Clear
| Event sent when the content of the clipboard has been removed. More...
struct | _Ecore_Win32_Event_Selection_Notify
| Event sent when the content of the clipboard has been added. More...

## Typedefs
typedef struct _Ecore_Win32_Window | Ecore_Win32_Window
typedef void | Ecore_Win32_Cursor
| Abstract type for a cursor.
typedef struct _Ecore_Win32_Event_Mouse_In | Ecore_Win32_Event_Mouse_In
| Event sent when the mouse enters the window.
typedef struct _Ecore_Win32_Event_Mouse_Out | Ecore_Win32_Event_Mouse_Out
| Event sent when the mouse leaves the window.
typedef struct _Ecore_Win32_Event_Window_Focus_In | Ecore_Win32_Event_Window_Focus_In
| Event sent when the window gets the focus.
typedef struct _Ecore_Win32_Event_Window_Focus_Out | Ecore_Win32_Event_Window_Focus_Out
| Event sent when the window looses the focus.
typedef struct _Ecore_Win32_Event_Window_Damage | Ecore_Win32_Event_Window_Damage
| Event sent when the window is damaged.
typedef struct _Ecore_Win32_Event_Window_Create | Ecore_Win32_Event_Window_Create
| Event sent when the window is created.
typedef struct _Ecore_Win32_Event_Window_Destroy | Ecore_Win32_Event_Window_Destroy
| Event sent when the window is destroyed.
typedef struct _Ecore_Win32_Event_Window_Hide | Ecore_Win32_Event_Window_Hide
| Event sent when the window is hidden.
typedef struct _Ecore_Win32_Event_Window_Show | Ecore_Win32_Event_Window_Show
| Event sent when the window is shown.
typedef struct _Ecore_Win32_Event_Window_Configure | Ecore_Win32_Event_Window_Configure
| Event sent when the window is configured.
typedef struct _Ecore_Win32_Event_Window_Resize | Ecore_Win32_Event_Window_Resize
| Event sent when the window is resized.
typedef struct _Ecore_Win32_Event_Window_Delete_Request | Ecore_Win32_Event_Window_Delete_Request
| Event sent when the window is deleted.
typedef struct _Ecore_Win32_Event_Selection_Clear | Ecore_Win32_Event_Selection_Clear
| Event sent when the content of the clipboard has been removed. More...
typedef struct _Ecore_Win32_Event_Selection_Notify | Ecore_Win32_Event_Selection_Notify
| Event sent when the content of the clipboard has been added. More...
typedef int(* | Ecore_Win32_Dnd_DropTarget_Callback) (void *window, int event, int pt_x, int pt_y, void *data, int size)
| Callback type for Drop operations. More...
typedef struct _Ecore_Win32_Window | Ecore_Win32_Window
| Abstract type for a window.

## Enumerations
enum | Ecore_Win32_Window_State { ECORE_WIN32_WINDOW_STATE_ICONIFIED, ECORE_WIN32_WINDOW_STATE_MODAL, ECORE_WIN32_WINDOW_STATE_STICKY, ECORE_WIN32_WINDOW_STATE_MAXIMIZED_VERT, ECORE_WIN32_WINDOW_STATE_MAXIMIZED_HORZ, ECORE_WIN32_WINDOW_STATE_MAXIMIZED, ECORE_WIN32_WINDOW_STATE_SHADED, ECORE_WIN32_WINDOW_STATE_HIDDEN, ECORE_WIN32_WINDOW_STATE_FULLSCREEN, ECORE_WIN32_WINDOW_STATE_ABOVE, ECORE_WIN32_WINDOW_STATE_BELOW, ECORE_WIN32_WINDOW_STATE_DEMANDS_ATTENTION, ECORE_WIN32_WINDOW_STATE_UNKNOWN }
| State of a window. More...
enum | Ecore_Win32_Window_Type { ECORE_WIN32_WINDOW_TYPE_DESKTOP, ECORE_WIN32_WINDOW_TYPE_DOCK, ECORE_WIN32_WINDOW_TYPE_TOOLBAR, ECORE_WIN32_WINDOW_TYPE_MENU, ECORE_WIN32_WINDOW_TYPE_UTILITY, ECORE_WIN32_WINDOW_TYPE_SPLASH, ECORE_WIN32_WINDOW_TYPE_DIALOG, ECORE_WIN32_WINDOW_TYPE_NORMAL, ECORE_WIN32_WINDOW_TYPE_UNKNOWN }
| Type of a window. More...
enum | Ecore_Win32_Cursor_Shape { ECORE_WIN32_CURSOR_SHAPE_APP_STARTING, ECORE_WIN32_CURSOR_SHAPE_ARROW, ECORE_WIN32_CURSOR_SHAPE_CROSS, ECORE_WIN32_CURSOR_SHAPE_HAND, ECORE_WIN32_CURSOR_SHAPE_HELP, ECORE_WIN32_CURSOR_SHAPE_I_BEAM, ECORE_WIN32_CURSOR_SHAPE_NO, ECORE_WIN32_CURSOR_SHAPE_SIZE_ALL, ECORE_WIN32_CURSOR_SHAPE_SIZE_NESW, ECORE_WIN32_CURSOR_SHAPE_SIZE_NS, ECORE_WIN32_CURSOR_SHAPE_SIZE_NWSE, ECORE_WIN32_CURSOR_SHAPE_SIZE_WE, ECORE_WIN32_CURSOR_SHAPE_UP_ARROW, ECORE_WIN32_CURSOR_SHAPE_WAIT }
| Shape of a cursor. More...
enum | Ecore_Win32_Cursor_X11_Shape { ECORE_WIN32_CURSOR_X11_SHAPE_X, ECORE_WIN32_CURSOR_X11_SHAPE_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_BASED_ARROW_DOWN, ECORE_WIN32_CURSOR_X11_SHAPE_UP, ECORE_WIN32_CURSOR_X11_SHAPE_BOAT, ECORE_WIN32_CURSOR_X11_SHAPE_BOGOSITY, ECORE_WIN32_CURSOR_X11_SHAPE_BOTTOM_LEFT_CORNER, ECORE_WIN32_CURSOR_X11_SHAPE_BOTTOM_RIGHT_CORNER, ECORE_WIN32_CURSOR_X11_SHAPE_BOTTOM_SIDE, ECORE_WIN32_CURSOR_X11_SHAPE_BOTTOM_TEE, ECORE_WIN32_CURSOR_X11_SHAPE_BOX_SPIRAL, ECORE_WIN32_CURSOR_X11_SHAPE_CENTER_PTR, ECORE_WIN32_CURSOR_X11_SHAPE_CIRCLE, ECORE_WIN32_CURSOR_X11_SHAPE_CLOCK, ECORE_WIN32_CURSOR_X11_SHAPE_COFFEE_MUG, ECORE_WIN32_CURSOR_X11_SHAPE_CROSS, ECORE_WIN32_CURSOR_X11_SHAPE_CROSS_REVERSE, ECORE_WIN32_CURSOR_X11_SHAPE_CROSSHAIR, ECORE_WIN32_CURSOR_X11_SHAPE_DIAMOND_CROSS, ECORE_WIN32_CURSOR_X11_SHAPE_DOT, ECORE_WIN32_CURSOR_X11_SHAPE_DOT_BOX_MASK, ECORE_WIN32_CURSOR_X11_SHAPE_DOUBLE_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_DRAFT_LARGE, ECORE_WIN32_CURSOR_X11_SHAPE_DRAFT_SMALL, ECORE_WIN32_CURSOR_X11_SHAPE_DRAPED_BOX, ECORE_WIN32_CURSOR_X11_SHAPE_EXCHANGE, ECORE_WIN32_CURSOR_X11_SHAPE_FLEUR, ECORE_WIN32_CURSOR_X11_SHAPE_GOBBLER, ECORE_WIN32_CURSOR_X11_SHAPE_GUMBY, ECORE_WIN32_CURSOR_X11_SHAPE_HAND1, ECORE_WIN32_CURSOR_X11_SHAPE_HAND2, ECORE_WIN32_CURSOR_X11_SHAPE_HEART, ECORE_WIN32_CURSOR_X11_SHAPE_ICON, ECORE_WIN32_CURSOR_X11_SHAPE_IRON_CROSS, ECORE_WIN32_CURSOR_X11_SHAPE_LEFT_PTR, ECORE_WIN32_CURSOR_X11_SHAPE_LEFT_SIDE, ECORE_WIN32_CURSOR_X11_SHAPE_LEFT_TEE, ECORE_WIN32_CURSOR_X11_SHAPE_LEFTBUTTON, ECORE_WIN32_CURSOR_X11_SHAPE_LL_ANGLE, ECORE_WIN32_CURSOR_X11_SHAPE_LR_ANGLE, ECORE_WIN32_CURSOR_X11_SHAPE_MAN, ECORE_WIN32_CURSOR_X11_SHAPE_MIDDLEBUTTON, ECORE_WIN32_CURSOR_X11_SHAPE_MOUSE, ECORE_WIN32_CURSOR_X11_SHAPE_PENCIL, ECORE_WIN32_CURSOR_X11_SHAPE_PIRATE, ECORE_WIN32_CURSOR_X11_SHAPE_PLUS, ECORE_WIN32_CURSOR_X11_SHAPE_QUESTION_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_RIGHT_PTR, ECORE_WIN32_CURSOR_X11_SHAPE_RIGHT_SIDE, ECORE_WIN32_CURSOR_X11_SHAPE_RIGHT_TEE, ECORE_WIN32_CURSOR_X11_SHAPE_RIGHTBUTTON, ECORE_WIN32_CURSOR_X11_SHAPE_RTL_LOGO, ECORE_WIN32_CURSOR_X11_SHAPE_SAILBOAT, ECORE_WIN32_CURSOR_X11_SHAPE_SB_DOWN_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_SB_H_DOUBLE_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_SB_LEFT_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_SB_RIGHT_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_SB_UP_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_SB_V_DOUBLE_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_SHUTTLE, ECORE_WIN32_CURSOR_X11_SHAPE_SIZING, ECORE_WIN32_CURSOR_X11_SHAPE_SPIDER, ECORE_WIN32_CURSOR_X11_SHAPE_SPRAYCAN, ECORE_WIN32_CURSOR_X11_SHAPE_STAR, ECORE_WIN32_CURSOR_X11_SHAPE_TARGET, ECORE_WIN32_CURSOR_X11_SHAPE_TCROSS, ECORE_WIN32_CURSOR_X11_SHAPE_TOP_LEFT_ARROW, ECORE_WIN32_CURSOR_X11_SHAPE_TOP_LEFT_CORNER, ECORE_WIN32_CURSOR_X11_SHAPE_TOP_RIGHT_CORNER, ECORE_WIN32_CURSOR_X11_SHAPE_TOP_SIDE, ECORE_WIN32_CURSOR_X11_SHAPE_TOP_TEE, ECORE_WIN32_CURSOR_X11_SHAPE_TREK, ECORE_WIN32_CURSOR_X11_SHAPE_UL_ANGLE, ECORE_WIN32_CURSOR_X11_SHAPE_UMBRELLA, ECORE_WIN32_CURSOR_X11_SHAPE_UR_ANGLE, ECORE_WIN32_CURSOR_X11_SHAPE_WATCH, ECORE_WIN32_CURSOR_X11_SHAPE_XTERM }
| Shape of an X11 cursor.
enum | Ecore_Win32_DnD_State { ECORE_WIN32_DND_EVENT_DRAG_ENTER = 1, ECORE_WIN32_DND_EVENT_DRAG_OVER = 2, ECORE_WIN32_DND_EVENT_DRAG_LEAVE = 3, ECORE_WIN32_DND_EVENT_DROP = 4 }
| State of a DnD operation. More...
enum | Ecore_Win32_Selection { ECORE_WIN32_SELECTION_PRIMARY, ECORE_WIN32_SELECTION_SECONDARY, ECORE_WIN32_SELECTION_DND, ECORE_WIN32_SELECTION_CLIPBOARD, ECORE_WIN32_SELECTION_OTHER }
| Type of the selection. More...

## Functions
EAPI int | ecore_win32_init ()
| Initialize the Ecore_Win32 library. More...
EAPI int | ecore_win32_shutdown ()
| Shut down the Ecore_Win32 library. More...
EAPI int | ecore_win32_screen_depth_get ()
| Retrieve the depth of the screen. More...
EAPI void | ecore_win32_double_click_time_set (double t)
| Sets the timeout for a double and triple clicks to be flagged. More...
EAPI double | ecore_win32_double_click_time_get (void)
| Retrieve the double and triple click flag timeout. More...
EAPI unsigned long | ecore_win32_current_time_get (void)
| Return the last event time. More...
EAPI Ecore_Win32_Window * | ecore_win32_window_new (Ecore_Win32_Window *parent, int x, int y, int width, int height)
| Creates a new window. More...
EAPI Ecore_Win32_Window * | ecore_win32_window_override_new (Ecore_Win32_Window *parent, int x, int y, int width, int height)
| Creates a new borderless window. More...
EAPI void | ecore_win32_window_free (Ecore_Win32_Window *window)
| Free the given window. More...
EAPI void * | ecore_win32_window_hwnd_get (Ecore_Win32_Window *window)
| Return the window HANDLE associated to the given window. More...
EAPI void | ecore_win32_window_move (Ecore_Win32_Window *window, int x, int y)
| Move the given window to a given position. More...
EAPI void | ecore_win32_window_resize (Ecore_Win32_Window *window, int width, int height)
| Resize the given window to a given size. More...
EAPI void | ecore_win32_window_move_resize (Ecore_Win32_Window *window, int x, int y, int width, int height)
| Move and resize the given window to a given position and size. More...
EAPI void | ecore_win32_window_geometry_get (Ecore_Win32_Window *window, int *x, int *y, int *width, int *height)
| Get the geometry of the given window. More...
EAPI void | ecore_win32_window_size_get (Ecore_Win32_Window *window, int *width, int *height)
| Get the size of the given window. More...
EAPI void | ecore_win32_window_size_min_set (Ecore_Win32_Window *window, int min_width, int min_height)
| Set the minimum size of the given window. More...
EAPI void | ecore_win32_window_size_min_get (Ecore_Win32_Window *window, int *min_width, int *min_height)
| Get the minimum size of the given window. More...
EAPI void | ecore_win32_window_size_max_set (Ecore_Win32_Window *window, int max_width, int max_height)
| Set the maximum size of the given window. More...
EAPI void | ecore_win32_window_size_max_get (Ecore_Win32_Window *window, int *max_width, int *max_height)
| Get the maximum size of the given window. More...
EAPI void | ecore_win32_window_size_base_set (Ecore_Win32_Window *window, int base_width, int base_height)
| Set the base size of the given window. More...
EAPI void | ecore_win32_window_size_base_get (Ecore_Win32_Window *window, int *base_width, int *base_height)
| Get the base size of the given window. More...
EAPI void | ecore_win32_window_size_step_set (Ecore_Win32_Window *window, int step_width, int step_height)
| Set the step size of the given window. More...
EAPI void | ecore_win32_window_size_step_get (Ecore_Win32_Window *window, int *step_width, int *step_height)
| Get the step size of the given window. More...
EAPI void | ecore_win32_window_show (Ecore_Win32_Window *window)
| Show the given window. More...
EAPI void | ecore_win32_window_hide (Ecore_Win32_Window *window)
| Hide the given window. More...
EAPI void | ecore_win32_window_raise (Ecore_Win32_Window *window)
| Place the given window at the top of the Z order. More...
EAPI void | ecore_win32_window_lower (Ecore_Win32_Window *window)
| Place the given window at the bottom of the Z order. More...
EAPI void | ecore_win32_window_title_set (Ecore_Win32_Window *window, const char *title)
| Set the title of the given window. More...
EAPI void | ecore_win32_window_focus (Ecore_Win32_Window *window)
| Set the focus to the given window. More...
EAPI void * | ecore_win32_window_focus_get (void)
| Get the current focused window. More...
EAPI void | ecore_win32_window_iconified_set (Ecore_Win32_Window *window, Eina_Bool on)
| Iconify or restore the given window. More...
EAPI void | ecore_win32_window_borderless_set (Ecore_Win32_Window *window, Eina_Bool on)
| Remove or restore the border of the given window. More...
EAPI void | ecore_win32_window_fullscreen_set (Ecore_Win32_Window *window, Eina_Bool on)
| Set the given window to fullscreen. More...
EAPI void | ecore_win32_window_cursor_set (Ecore_Win32_Window *window, Ecore_Win32_Cursor *cursor)
| Set the given cursor to the given window. More...
EAPI void | ecore_win32_window_state_set (Ecore_Win32_Window *window, Ecore_Win32_Window_State *state, unsigned int num)
| Set the state of the given window. More...
EAPI void | ecore_win32_window_state_request_send (Ecore_Win32_Window *window, Ecore_Win32_Window_State state, unsigned int set)
| Apply the modification of the state to the given window. More...
EAPI void | ecore_win32_window_type_set (Ecore_Win32_Window *window, Ecore_Win32_Window_Type type)
| Set the type of the given window. More...
EAPI Ecore_Win32_Cursor * | ecore_win32_cursor_new (const void *pixels_and, const void *pixels_xor, int width, int height, int hot_x, int hot_y)
| Create a new cursor. More...
EAPI void | ecore_win32_cursor_free (Ecore_Win32_Cursor *cursor)
| Free the given cursor. More...
EAPI Ecore_Win32_Cursor * | ecore_win32_cursor_shaped_new (Ecore_Win32_Cursor_Shape shape)
| Create a cursor from a Windows ressource. More...
EAPI const Ecore_Win32_Cursor * | ecore_win32_cursor_x11_shaped_get (Ecore_Win32_Cursor_X11_Shape shape)
| Retrieve a X11 cursor from a X Id. More...
EAPI void | ecore_win32_cursor_size_get (int *width, int *height)
| Retrieve the size of a valid cursor. More...
EAPI int | ecore_win32_dnd_init ()
| Initialize the Ecore_Win32 Drag and Drop module. More...
EAPI int | ecore_win32_dnd_shutdown ()
| Shut down the Ecore_Win32 Drag and Drop module. More...
EAPI Eina_Bool | ecore_win32_dnd_begin (const char *data, int size)
| Begin a DnD operation. More...
EAPI Eina_Bool | ecore_win32_dnd_register_drop_target (Ecore_Win32_Window *window, Ecore_Win32_Dnd_DropTarget_Callback callback)
| Register a Drop operation. More...
EAPI void | ecore_win32_dnd_unregister_drop_target (Ecore_Win32_Window *window)
| Unregister a Drop operation. More...
EAPI Eina_Bool | ecore_win32_clipboard_set (const Ecore_Win32_Window *window, const void *data, int size)
| Set data to the clipboard. More...
EAPI Eina_Bool | ecore_win32_clipboard_get (const Ecore_Win32_Window *window, void **data, int *size)
| Get data from the clipboard. More...
EAPI Eina_Bool | ecore_win32_clipboard_clear (const Ecore_Win32_Window *window)
| Cleat the clipboard. More...

## Variables
EAPI int | ECORE_WIN32_EVENT_MOUSE_IN
| Ecore_Event for the Ecore_Win32_Event_Mouse_In event.
EAPI int | ECORE_WIN32_EVENT_MOUSE_OUT
| Ecore_Event for the Ecore_Win32_Event_Mouse_Out event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_FOCUS_IN
| Ecore_Event for the Ecore_Win32_Event_Window_Focus_In event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_FOCUS_OUT
| Ecore_Event for the Ecore_Win32_Event_Window_Focus_Out event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_DAMAGE
| Ecore_Event for the Ecore_Win32_Event_Damage event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_CREATE
| Ecore_Event for the Ecore_Win32_Event_Create event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_DESTROY
| Ecore_Event for the Ecore_Win32_Event_Destroy event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_HIDE
| Ecore_Event for the Ecore_Win32_Event_Hide event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_SHOW
| Ecore_Event for the Ecore_Win32_Event_Show event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_CONFIGURE
| Ecore_Event for the Ecore_Win32_Event_Configure event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_RESIZE
| Ecore_Event for the Ecore_Win32_Event_Resize event.
EAPI int | ECORE_WIN32_EVENT_WINDOW_DELETE_REQUEST
| Ecore_Event for the Ecore_Win32_Event_Window_Delete_Request event.
EAPI int | ECORE_WIN32_EVENT_SELECTION_CLEAR
| Ecore_Event for the Ecore_Win32_Event_Selection_Clear event. More...
EAPI int | ECORE_WIN32_EVENT_SELECTION_NOTIFY
| Ecore_Event for the Ecore_Win32_Event_Selection_Notify event. More...

## Detailed Description

Ecore_Win32 is a library that wraps Windows graphic functions and integrate them nicely into the Ecore main loop.

# Initialisation / Shutdown

To fill...

# How to set icons to an application

It is possible to also sets the icon of the application easily:

- Create an icon with your favorite image creator. The Gimp is a good choice. Create several images of size 16, 32 and 48. You can also create images of size 24, 64, 128 and 256. Paste all of them in the image of size 16 as a layer. Save the image of size 16 with the name my_icon.ico. Put it where the source code of the application is located.
- Create my_icon_rc.rc file with your code editor and add in it:
  101 ICON DISCARDABLE "my_icon.ico"
- With Visual Studio, put that file in the 'Resource file' part of the project.
- With MinGW, you have to compile it with windres:
  windres my_icon_rc.rc my_icon_rc.o
  and add my_icon_rc.o to the object files of the application.

Note
  The value 101 must not be changed, it's the ID used internally by Ecore_Win32 to get the icons.

## Typedef Documentation

Ecore_Win32_Event_Selection_Clear

Event sent when the content of the clipboard has been removed.

Since
  1.16

Ecore_Win32_Event_Selection_Notify

Event sent when the content of the clipboard has been added.

Since
  1.16

Ecore_Win32_Dnd_DropTarget_Callback

Callback type for Drop operations.

See ecore_win32_dnd_register_drop_target().

## Enumeration Type Documentation

enum Ecore_Win32_Window_State

State of a window.

Enumerator
ECORE_WIN32_WINDOW_STATE_ICONIFIED | iconified window
ECORE_WIN32_WINDOW_STATE_MODAL | modal dialog box
ECORE_WIN32_WINDOW_STATE_STICKY | sticky window
ECORE_WIN32_WINDOW_STATE_MAXIMIZED_VERT | maximum vertical sized window
ECORE_WIN32_WINDOW_STATE_MAXIMIZED_HORZ | maximum horizontal sized window
ECORE_WIN32_WINDOW_STATE_MAXIMIZED | maximum sized window
ECORE_WIN32_WINDOW_STATE_SHADED | shaded window
ECORE_WIN32_WINDOW_STATE_HIDDEN | hidden (minimized or iconified) window
ECORE_WIN32_WINDOW_STATE_FULLSCREEN | fullscreen window
ECORE_WIN32_WINDOW_STATE_ABOVE | above window
ECORE_WIN32_WINDOW_STATE_BELOW | below window
ECORE_WIN32_WINDOW_STATE_DEMANDS_ATTENTION | To document.
ECORE_WIN32_WINDOW_STATE_UNKNOWN | Unknown state.

enum Ecore_Win32_Window_Type

Type of a window.

Enumerator
ECORE_WIN32_WINDOW_TYPE_DESKTOP | Desktop feature.
ECORE_WIN32_WINDOW_TYPE_DOCK | Dock window (should be on top of other windows)
ECORE_WIN32_WINDOW_TYPE_TOOLBAR | Toolbar window.
ECORE_WIN32_WINDOW_TYPE_MENU | Menu window.
ECORE_WIN32_WINDOW_TYPE_UTILITY | Small persistent utility window, such as a palette or toolbox.
ECORE_WIN32_WINDOW_TYPE_SPLASH | Splash screen window displayed as an application is starting up.
ECORE_WIN32_WINDOW_TYPE_DIALOG | Dialog window.
ECORE_WIN32_WINDOW_TYPE_NORMAL | Normal top-level window.
ECORE_WIN32_WINDOW_TYPE_UNKNOWN | Unknown type.

enum Ecore_Win32_Cursor_Shape

Shape of a cursor.

Enumerator
ECORE_WIN32_CURSOR_SHAPE_APP_STARTING | Standard arrow and small hourglass.
ECORE_WIN32_CURSOR_SHAPE_ARROW | Standard arrow.
ECORE_WIN32_CURSOR_SHAPE_CROSS | Crosshair.
ECORE_WIN32_CURSOR_SHAPE_HAND | Hand.
ECORE_WIN32_CURSOR_SHAPE_HELP | Arrow and question mark.
ECORE_WIN32_CURSOR_SHAPE_I_BEAM | I-beam.
ECORE_WIN32_CURSOR_SHAPE_NO | Slashed circle.
ECORE_WIN32_CURSOR_SHAPE_SIZE_ALL | Four-pointed arrow pointing north, south, east, and west.
ECORE_WIN32_CURSOR_SHAPE_SIZE_NESW | Double-pointed arrow pointing northeast and southwest.
ECORE_WIN32_CURSOR_SHAPE_SIZE_NS | Double-pointed arrow pointing north and south.
ECORE_WIN32_CURSOR_SHAPE_SIZE_NWSE | Double-pointed arrow pointing northwest and southeast.
ECORE_WIN32_CURSOR_SHAPE_SIZE_WE | Double-pointed arrow pointing west and east.
ECORE_WIN32_CURSOR_SHAPE_UP_ARROW | Vertical arrow.
ECORE_WIN32_CURSOR_SHAPE_WAIT | Hourglass.

enum Ecore_Win32_DnD_State

State of a DnD operation.

Enumerator
ECORE_WIN32_DND_EVENT_DRAG_ENTER | Drag enter.
ECORE_WIN32_DND_EVENT_DRAG_OVER | Drag over.
ECORE_WIN32_DND_EVENT_DRAG_LEAVE | Drag leave.
ECORE_WIN32_DND_EVENT_DROP | Drop.

enum Ecore_Win32_Selection

Type of the selection.

Since
  1.16

## Function Documentation

EAPI int ecore_win32_init | ( |  | ) |

Initialize the Ecore_Win32 library.

Returns
  1 or greater on success, 0 on error.

This function sets up the Windows graphic system. It returns 0 on failure, otherwise it returns the number of times it has already been called.

When Ecore_Win32 is not used anymore, call ecore_win32_shutdown() to shut down the Ecore_Win32 library.

References ecore_event_init(), ecore_event_shutdown(), ecore_event_type_new(), ecore_win32_dnd_init(), eina_init(), eina_log_domain_register(), eina_log_domain_unregister(), EINA_LOG_ERR, eina_shutdown(), and ERR.

EAPI int ecore_win32_shutdown | ( |  | ) |

Shut down the Ecore_Win32 library.

Returns
  0 when the library is completely shut down, 1 or greater otherwise.

This function shuts down the Ecore_Win32 library. It returns 0 when it has been called the same number of times than ecore_win32_init(). In that case it shuts down all the Windows graphic system.

References ecore_event_shutdown(), ecore_win32_cursor_free(), ecore_win32_dnd_shutdown(), eina_log_domain_unregister(), eina_shutdown(), and INF.

EAPI int ecore_win32_screen_depth_get | ( |  | ) |

Retrieve the depth of the screen.

Returns
  The depth of the screen.

This function returns the depth of the screen. If an error occurs, it returns 0.

References ERR, and INF.

EAPI void ecore_win32_double_click_time_set | ( | double | t | ) |

Sets the timeout for a double and triple clicks to be flagged.

Parameters

  t | The time in seconds.

This function sets the time `t` between clicks before the double_click flag is set in a button down event. If 3 clicks occur within double this time, the triple_click flag is also set.

EAPI double ecore_win32_double_click_time_get | ( | void |  | ) |

Retrieve the double and triple click flag timeout.

Returns
  The timeout for double clicks in seconds.

This function returns the double clicks in seconds. If ecore_win32_double_click_time_set() has not been called, the default value is returned. See ecore_win32_double_click_time_set() for more informations.

EAPI unsigned long ecore_win32_current_time_get | ( | void |  | ) |

Return the last event time.

Returns
  The last envent time.

This function returns the last event time.

EAPI Ecore_Win32_Window * ecore_win32_window_new | ( | Ecore_Win32_Window * | parent,
|  | int | x,
|  | int | y,
|  | int | width,
|  | int | height
| ) |  |

Creates a new window.

Parameters

  parent | The parent window.
  x | The x coordinate of the top-left corner of the window.
  y | The y coordinate of the top-left corner of the window.
  width | The width of the window.
  height | The height of the window.

Returns
  A newly allocated window.

This function creates a new window which parent is `parent`. `width` and `height` are the size of the window content (the client part), without the border and title bar. `x` and `y` are the system coordinates of the top left cerner of the window (that is, of the title bar). This function returns a newly created window on success, and `NULL` on failure.

References INF.

EAPI Ecore_Win32_Window * ecore_win32_window_override_new | ( | Ecore_Win32_Window * | parent,
|  | int | x,
|  | int | y,
|  | int | width,
|  | int | height
| ) |  |

Creates a new borderless window.

Parameters

  parent | The parent window.
  x | The x coordinate of the top-left corner of the window.
  y | The y coordinate of the top-left corner of the window.
  width | The width of the window.
  height | The height of the window.

Returns
  A newly allocated window.

This function is the same than ecore_win32_window_override_new() but the returned window is borderless.

References INF.

EAPI void ecore_win32_window_free | ( | Ecore_Win32_Window * | window | ) |

Free the given window.

Parameters

  window | The window to free.

This function frees `window`. If `window` is `NULL`, this function does nothing.

References INF.

EAPI void * ecore_win32_window_hwnd_get | ( | Ecore_Win32_Window * | window | ) |

Return the window HANDLE associated to the given window.

Parameters

  window | The window to retrieve the HANDLE from.

This function returns the window HANDLE associated to `window`. If `window` is `NULL`, this function returns `NULL`.

Note
  The returned value is of type HWND.

EAPI void ecore_win32_window_move | ( | Ecore_Win32_Window * | window,
|  | int | x,
|  | int | y
| ) |  |

Move the given window to a given position.

Parameters

  window | The window to move.
  x | The x coordinate of the destination position.
  y | The y coordinate of the destination position.

This function move `window` to the new position of coordinates `x` and `y`. If `window` is `NULL`, or if it is fullscreen, or on error, this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_resize | ( | Ecore_Win32_Window * | window,
|  | int | width,
|  | int | height
| ) |  |

Resize the given window to a given size.

Parameters

  window | The window to resize.
  width | The new width.
  height | The new height.

This function resize `window` to the new `width` and `height`. If `window` is `NULL`, or if it is fullscreen, or on error, this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_move_resize | ( | Ecore_Win32_Window * | window,
|  | int | x,
|  | int | y,
|  | int | width,
|  | int | height
| ) |  |

Move and resize the given window to a given position and size.

Parameters

  window | The window to move and resize.
  x | The x coordinate of the destination position.
  y | The x coordinate of the destination position.
  width | The new width.
  height | The new height.

This function resize `window` to the new position of coordinates `x` and `y` and the new `width` and `height`. If `window` is `NULL`, or if it is fullscreen, or on error, this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_geometry_get | ( | Ecore_Win32_Window * | window,
|  | int * | x,
|  | int * | y,
|  | int * | width,
|  | int * | height
| ) |  |

Get the geometry of the given window.

Parameters

  window | The window to retrieve the geometry from.
  x | The x coordinate of the position.
  y | The x coordinate of the position.
  width | The width.
  height | The height.

This function retrieves the position and size of `window`. `x`, `y`, `width` and `height` can be buffers that will be filled with the corresponding values. If one of them is `NULL`, nothing will be done for that parameter. If `window` is `NULL`, and if the buffers are not `NULL`, they will be filled with respectively 0, 0, the size of the screen and the height of the screen.

References ERR, and INF.

EAPI void ecore_win32_window_size_get | ( | Ecore_Win32_Window * | window,
|  | int * | width,
|  | int * | height
| ) |  |

Get the size of the given window.

Parameters

  window | The window to retrieve the size from.
  width | The width.
  height | The height.

This function retrieves the size of `window`. `width` and `height` can be buffers that will be filled with the corresponding values. If one of them is `NULL`, nothing will be done for that parameter. If `window` is `NULL`, and if the buffers are not `NULL`, they will be filled with respectively the size of the screen and the height of the screen.

References ERR, and INF.

EAPI void ecore_win32_window_size_min_set | ( | Ecore_Win32_Window * | window,
|  | int | min_width,
|  | int | min_height
| ) |  |

Set the minimum size of the given window.

Parameters

  window | The window.
  min_width | The minimal width.
  min_height | The minimal height.

This function sets the minimum size of `window` to `min_width` and *p min_height. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_size_min_get | ( | Ecore_Win32_Window * | window,
|  | int * | min_width,
|  | int * | min_height
| ) |  |

Get the minimum size of the given window.

Parameters

  window | The window.
  min_width | The minimal width.
  min_height | The minimal height.

This function fills the minimum size of `window` in the buffers `min_width` and *p min_height. They both can be `NULL`. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_size_max_set | ( | Ecore_Win32_Window * | window,
|  | int | max_width,
|  | int | max_height
| ) |  |

Set the maximum size of the given window.

Parameters

  window | The window.
  max_width | The maximal width.
  max_height | The maximal height.

This function sets the maximum size of `window` to `max_width` and *p max_height. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_size_max_get | ( | Ecore_Win32_Window * | window,
|  | int * | max_width,
|  | int * | max_height
| ) |  |

Get the maximum size of the given window.

Parameters

  window | The window.
  max_width | The maximal width.
  max_height | The maximal height.

This function fills the maximum size of `window` in the buffers `max_width` and *p max_height. They both can be `NULL`. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_size_base_set | ( | Ecore_Win32_Window * | window,
|  | int | base_width,
|  | int | base_height
| ) |  |

Set the base size of the given window.

Parameters

  window | The window.
  base_width | The base width.
  base_height | The base height.

This function sets the base size of `window` to `base_width` and *p base_height. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_size_base_get | ( | Ecore_Win32_Window * | window,
|  | int * | base_width,
|  | int * | base_height
| ) |  |

Get the base size of the given window.

Parameters

  window | The window.
  base_width | The base width.
  base_height | The bas height.

This function fills the base size of `window` in the buffers `base_width` and *p base_height. They both can be `NULL`. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_size_step_set | ( | Ecore_Win32_Window * | window,
|  | int | step_width,
|  | int | step_height
| ) |  |

Set the step size of the given window.

Parameters

  window | The window.
  step_width | The step width.
  step_height | The step height.

This function sets the step size of `window` to `step_width` and *p step_height. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_size_step_get | ( | Ecore_Win32_Window * | window,
|  | int * | step_width,
|  | int * | step_height
| ) |  |

Get the step size of the given window.

Parameters

  window | The window.
  step_width | The step width.
  step_height | The bas height.

This function fills the step size of `window` in the buffers `step_width` and *p step_height. They both can be `NULL`. If `window` is `NULL`, this functions does nothing.

References INF.

EAPI void ecore_win32_window_show | ( | Ecore_Win32_Window * | window | ) |

Show the given window.

Parameters

  window | The window to show.

This function shows `window`. If `window` is `NULL`, or on error, this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_hide | ( | Ecore_Win32_Window * | window | ) |

Hide the given window.

Parameters

  window | The window to show.

This function hides `window`. If `window` is `NULL`, or on error, this function does nothing.

References INF.

EAPI void ecore_win32_window_raise | ( | Ecore_Win32_Window * | window | ) |

Place the given window at the top of the Z order.

Parameters

  window | The window to place at the top.

This function places `window` at the top of the Z order. If `window` is `NULL`, this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_lower | ( | Ecore_Win32_Window * | window | ) |

Place the given window at the bottom of the Z order.

Parameters

  window | The window to place at the bottom.

This function places `window` at the bottom of the Z order. If `window` is `NULL`, this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_title_set | ( | Ecore_Win32_Window * | window,
|  | const char * | title
| ) |  |

Set the title of the given window.

Parameters

  window | The window to set the title.
  title | The new title.

This function sets the title of `window` to `title`. If `window` is `NULL`, or if `title` is `NULL` or empty, or on error, this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_focus | ( | Ecore_Win32_Window * | window | ) |

Set the focus to the given window.

Parameters

  window | The window to give focus to.

This function gives the focus to `window`. If `window` is `NULL`, this function does nothing.

References ERR, and INF.

EAPI void * ecore_win32_window_focus_get | ( | void |  | ) |

Get the current focused window.

Returns
  The window that has focus.

This function returns the window that has focus. If the calling thread's message queue does not have an associated window with the keyboard focus, the return value is `NULL`.

Note
  Even if the returned value is `NULL`, another thread's queue may be associated with a window that has the keyboard focus.
  The returned value is of type HWND.

References ERR, and INF.

EAPI void ecore_win32_window_iconified_set | ( | Ecore_Win32_Window * | window,
|  | Eina_Bool | on
| ) |  |

Iconify or restore the given window.

Parameters

  window | The window.
  on | `EINA_TRUE` to iconify the window, `EINA_FALSE` to restore it.

This function iconify or restore `window`. If `on` is set to `EINA_TRUE`, the window will be iconified, if it is set to `EINA_FALSE`, it will be restored. If `window` is `NULL` or if the state does not change (like iconifying the window while it is already iconified), this function does nothing.

References INF.

Referenced by ecore_win32_window_state_request_send().

EAPI void ecore_win32_window_borderless_set | ( | Ecore_Win32_Window * | window,
|  | Eina_Bool | on
| ) |  |

Remove or restore the border of the given window.

Parameters

  window | The window.
  on | `EINA_TRUE` to remove the border, `EINA_FALSE` to restore it.

This function remove or restore the border of `window`. If `on` is set to `EINA_TRUE`, the window will have no border, if it is set to `EINA_FALSE`, it will have a border. If `window` is `NULL` or if the state does not change (like setting to borderless while the window has no border), this function does nothing.

References ERR, and INF.

EAPI void ecore_win32_window_fullscreen_set | ( | Ecore_Win32_Window * | window,
|  | Eina_Bool | on
| ) |  |

Set the given window to fullscreen.

Parameters

  window | The window.
  on | `EINA_TRUE` for fullscreen mode, `EINA_FALSE` for windowed mode.

This function set `window` to fullscreen or windowed mode. If `on` is set to `EINA_TRUE`, the window will be fullscreen, if it is set to `EINA_FALSE`, it will be windowed. If `window` is `NULL` or if the state does not change (like setting to fullscreen while the window is already fullscreen), this function does nothing.

References ERR, and INF.

Referenced by ecore_win32_window_state_request_send().

EAPI void ecore_win32_window_cursor_set | ( | Ecore_Win32_Window * | window,
|  | Ecore_Win32_Cursor * | cursor
| ) |  |

Set the given cursor to the given window.

Parameters

  window | The window to modify the cursor.
  cursor | The new cursor.

This function sets `cursor` to `window`. `cursor` must have been obtained by ecore_win32_cursor_new() or ecore_win32_cursor_shaped_new() or ecore_win32_cursor_x11_shaped_new(). If `window` or `cursor` is `NULL`, the function does nothing.

See also
  ecore_win32_cursor_new()
  ecore_win32_cursor_shaped_new()
  ecore_win32_cursor_x11_shaped_new()

References INF.

EAPI void ecore_win32_window_state_set | ( | Ecore_Win32_Window * | window,
|  | Ecore_Win32_Window_State * | state,
|  | unsigned int | num
| ) |  |

Set the state of the given window.

Parameters

  window | The window to modify the state.
  state | An array of the new states.
  num | The number of states in the array.

This function set the state of `window`. `state` is an array of states of size `num`. If `window` or `state` are `NULL`, or if `num` is less or equal than 0, the function does nothing.

References ECORE_WIN32_WINDOW_STATE_ABOVE, ECORE_WIN32_WINDOW_STATE_BELOW, ECORE_WIN32_WINDOW_STATE_DEMANDS_ATTENTION, ECORE_WIN32_WINDOW_STATE_FULLSCREEN, ECORE_WIN32_WINDOW_STATE_HIDDEN, ECORE_WIN32_WINDOW_STATE_ICONIFIED, ECORE_WIN32_WINDOW_STATE_MAXIMIZED, ECORE_WIN32_WINDOW_STATE_MAXIMIZED_HORZ, ECORE_WIN32_WINDOW_STATE_MAXIMIZED_VERT, ECORE_WIN32_WINDOW_STATE_MODAL, ECORE_WIN32_WINDOW_STATE_SHADED, ECORE_WIN32_WINDOW_STATE_STICKY, ECORE_WIN32_WINDOW_STATE_UNKNOWN, and INF.

EAPI void ecore_win32_window_state_request_send | ( | Ecore_Win32_Window * | window,
|  | Ecore_Win32_Window_State | state,
|  | unsigned int | set
| ) |  |

Apply the modification of the state to the given window.

Parameters

  window | The window.
  state | The state to apply changes.
  set | The value of the state change.

This function applies the modification of the state `state` of `window`. `set` is used only for ECORE_WIN32_WINDOW_STATE_ICONIFIED and ECORE_WIN32_WINDOW_STATE_FULLSCREEN. If `window` is `NULL`, the function does nothing.

References ecore_win32_window_fullscreen_set(), ecore_win32_window_iconified_set(), ECORE_WIN32_WINDOW_STATE_ABOVE, ECORE_WIN32_WINDOW_STATE_BELOW, ECORE_WIN32_WINDOW_STATE_DEMANDS_ATTENTION, ECORE_WIN32_WINDOW_STATE_FULLSCREEN, ECORE_WIN32_WINDOW_STATE_HIDDEN, ECORE_WIN32_WINDOW_STATE_ICONIFIED, ECORE_WIN32_WINDOW_STATE_MAXIMIZED, ECORE_WIN32_WINDOW_STATE_MAXIMIZED_HORZ, ECORE_WIN32_WINDOW_STATE_MAXIMIZED_VERT, ECORE_WIN32_WINDOW_STATE_MODAL, ECORE_WIN32_WINDOW_STATE_SHADED, ECORE_WIN32_WINDOW_STATE_STICKY, ECORE_WIN32_WINDOW_STATE_UNKNOWN, ERR, and INF.

EAPI void ecore_win32_window_type_set | ( | Ecore_Win32_Window * | window,
|  | Ecore_Win32_Window_Type | type
| ) |  |

Set the type of the given window.

Parameters

  window | The window to modify the type.
  type | The nwindow types.

This function set the type of `window` to `type`. If `window` is `NULL`, the function does nothing.

References ECORE_WIN32_WINDOW_TYPE_DESKTOP, ECORE_WIN32_WINDOW_TYPE_DIALOG, ECORE_WIN32_WINDOW_TYPE_DOCK, ECORE_WIN32_WINDOW_TYPE_MENU, ECORE_WIN32_WINDOW_TYPE_NORMAL, ECORE_WIN32_WINDOW_TYPE_SPLASH, ECORE_WIN32_WINDOW_TYPE_TOOLBAR, ECORE_WIN32_WINDOW_TYPE_UNKNOWN, ECORE_WIN32_WINDOW_TYPE_UTILITY, and INF.

EAPI Ecore_Win32_Cursor * ecore_win32_cursor_new | ( | const void * | pixels_and,
|  | const void * | pixels_xor,
|  | int | width,
|  | int | height,
|  | int | hot_x,
|  | int | hot_y
| ) |  |

Create a new cursor.

Parameters

  pixels_and | The array of bytes containing the bit values for the AND mask of the cursor.
  pixels_xor | The array of bytes containing the bit values for the XOR mask of the cursor.
  width | The width of the cursor.
  height | The height of the cursor.
  hot_x | The horizontal position of the cursor's hot spot.
  hot_y | The vertical position of the cursor's hot spot.

Returns
  A newly user-defined cursor.

This function creates a new cursor of size `width` and `height`. They must be valid size. To determine the valid size of a cursor, use ecore_win32_cursor_size_get(). `pixels_and` is an array of bytes (unsigned char) containing the bits of the cursor that will be visible. `pixels_xor` is similar but will allow the cursor to have a shape. Here is the truth table for the masks:

AND mask | XOR mask | Display
0 | 0 | Black
0 | 1 | White
1 | 0 | Screen
1 | 1 | Reverse screen

`hot_x` and `hot_y` are the position of the hot spot of the cursor. If `pixels_and` or `pixels_xor` are `NULL`, the function returns NULL. If `width` or `height` does not match the valid size of a cursor, the function returns `NULL`. On success, the function creates a user-defined cursor, otherwise it returns `NULL`.

Once the cursor is not used anymore, use ecore_win32_cursor_free() to free the ressources.

Example of use:

1 unsigned char pixels_and[] ={
2 0xFF, 0xFC, 0x3F, 0xFF, // line 1
3 0xFF, 0xC0, 0x1F, 0xFF, // line 2
4 0xFF, 0x00, 0x3F, 0xFF, // line 3
5 0xFE, 0x00, 0xFF, 0xFF, // line 4
6
7 0xF7, 0x01, 0xFF, 0xFF, // line 5
8 0xF0, 0x03, 0xFF, 0xFF, // line 6
9 0xF0, 0x03, 0xFF, 0xFF, // line 7
10 0xE0, 0x07, 0xFF, 0xFF, // line 8
11
12 0xC0, 0x07, 0xFF, 0xFF, // line 9
13 0xC0, 0x0F, 0xFF, 0xFF, // line 10
14 0x80, 0x0F, 0xFF, 0xFF, // line 11
15 0x80, 0x0F, 0xFF, 0xFF, // line 12
16
17 0x80, 0x07, 0xFF, 0xFF, // line 13
18 0x00, 0x07, 0xFF, 0xFF, // line 14
19 0x00, 0x03, 0xFF, 0xFF, // line 15
20 0x00, 0x00, 0xFF, 0xFF, // line 16
21
22 0x00, 0x00, 0x7F, 0xFF, // line 17
23 0x00, 0x00, 0x1F, 0xFF, // line 18
24 0x00, 0x00, 0x0F, 0xFF, // line 19
25 0x80, 0x00, 0x0F, 0xFF, // line 20
26
27 0x80, 0x00, 0x07, 0xFF, // line 21
28 0x80, 0x00, 0x07, 0xFF, // line 22
29 0xC0, 0x00, 0x07, 0xFF, // line 23
30 0xC0, 0x00, 0x0F, 0xFF, // line 24
31
32 0xE0, 0x00, 0x0F, 0xFF, // line 25
33 0xF0, 0x00, 0x1F, 0xFF, // line 26
34 0xF0, 0x00, 0x1F, 0xFF, // line 27
35 0xF8, 0x00, 0x3F, 0xFF, // line 28
36
37 0xFE, 0x00, 0x7F, 0xFF, // line 29
38 0xFF, 0x00, 0xFF, 0xFF, // line 30
39 0xFF, 0xC3, 0xFF, 0xFF, // line 31
40 0xFF, 0xFF, 0xFF, 0xFF // line 32
41 };
42
43 unsigned char pixels_xor[] = {
44 0x00, 0x00, 0x00, 0x00, // line 1
45 0x00, 0x03, 0xC0, 0x00, // line 2
46 0x00, 0x3F, 0x00, 0x00, // line 3
47 0x00, 0xFE, 0x00, 0x00, // line 4
48
49 0x0E, 0xFC, 0x00, 0x00, // line 5
50 0x07, 0xF8, 0x00, 0x00, // line 6
51 0x07, 0xF8, 0x00, 0x00, // line 7
52 0x0F, 0xF0, 0x00, 0x00, // line 8
53
54 0x1F, 0xF0, 0x00, 0x00, // line 9
55 0x1F, 0xE0, 0x00, 0x00, // line 10
56 0x3F, 0xE0, 0x00, 0x00, // line 11
57 0x3F, 0xE0, 0x00, 0x00, // line 12
58
59 0x3F, 0xF0, 0x00, 0x00, // line 13
60 0x7F, 0xF0, 0x00, 0x00, // line 14
61 0x7F, 0xF8, 0x00, 0x00, // line 15
62 0x7F, 0xFC, 0x00, 0x00, // line 16
63
64 0x7F, 0xFF, 0x00, 0x00, // line 17
65 0x7F, 0xFF, 0x80, 0x00, // line 18
66 0x7F, 0xFF, 0xE0, 0x00, // line 19
67 0x3F, 0xFF, 0xE0, 0x00, // line 20
68
69 0x3F, 0xC7, 0xF0, 0x00, // line 21
70 0x3F, 0x83, 0xF0, 0x00, // line 22
71 0x1F, 0x83, 0xF0, 0x00, // line 23
72 0x1F, 0x83, 0xE0, 0x00, // line 24
73
74 0x0F, 0xC7, 0xE0, 0x00, // line 25
75 0x07, 0xFF, 0xC0, 0x00, // line 26
76 0x07, 0xFF, 0xC0, 0x00, // line 27
77 0x01, 0xFF, 0x80, 0x00, // line 28
78
79 0x00, 0xFF, 0x00, 0x00, // line 29
80 0x00, 0x3C, 0x00, 0x00, // line 30
81 0x00, 0x00, 0x00, 0x00, // line 31
82 0x00, 0x00, 0x00, 0x00 // line 32
83 };
84
85 Ecore_Win32_Cursor *cursor = ecore_win32_cursor_new(pixels_and, pixels_xor, 32, 32, 19, 2);
86 ecore_win32_window_cursor_set(window, cursor);

See also
  ecore_win32_cursor_free()
  ecore_win32_window_cursor_set()

References INF.

EAPI void ecore_win32_cursor_free | ( | Ecore_Win32_Cursor * | cursor | ) |

Free the given cursor.

Parameters

  cursor | The cursor to free.

This function free `cursor`. `cursor` must have been obtained with ecore_win32_cursor_new() or ecore_win32_cursor_x11_shaped_new().

See also
  ecore_win32_cursor_new()
  ecore_win32_cursor_x11_shaped_new()

References INF.

Referenced by ecore_win32_shutdown().

EAPI Ecore_Win32_Cursor * ecore_win32_cursor_shaped_new | ( | Ecore_Win32_Cursor_Shape | shape | ) |

Create a cursor from a Windows ressource.

Parameters

  shape | The pre-defined shape of the cursor.

Returns
  The new cursor.

This function returns a pre-defined cursor with a specified `shape`. This cursor does not need to be freed, as it is loaded from an existing resource. On error `NULL` is returned.

References ECORE_WIN32_CURSOR_SHAPE_APP_STARTING, ECORE_WIN32_CURSOR_SHAPE_ARROW, ECORE_WIN32_CURSOR_SHAPE_CROSS, ECORE_WIN32_CURSOR_SHAPE_HAND, ECORE_WIN32_CURSOR_SHAPE_HELP, ECORE_WIN32_CURSOR_SHAPE_I_BEAM, ECORE_WIN32_CURSOR_SHAPE_NO, ECORE_WIN32_CURSOR_SHAPE_SIZE_ALL, ECORE_WIN32_CURSOR_SHAPE_SIZE_NESW, ECORE_WIN32_CURSOR_SHAPE_SIZE_NS, ECORE_WIN32_CURSOR_SHAPE_SIZE_NWSE, ECORE_WIN32_CURSOR_SHAPE_SIZE_WE, ECORE_WIN32_CURSOR_SHAPE_UP_ARROW, ECORE_WIN32_CURSOR_SHAPE_WAIT, and INF.

EAPI const Ecore_Win32_Cursor * ecore_win32_cursor_x11_shaped_get | ( | Ecore_Win32_Cursor_X11_Shape | shape | ) |

Retrieve a X11 cursor from a X Id.

Parameters

  [in] | shape | The defined X11 shape of the cursor.

Returns
  The new cursor.

This function returns a defined cursor with a specified X11 `shape`. Do not use ecore_win32_cursor_free() to free the ressources as it is created once the libray is initialized and detroyed when it is shut down.

See also
  ecore_win32_cursor_new()

Since
  1.16

References INF.

EAPI void ecore_win32_cursor_size_get | ( | int * | width,
|  | int * | height
| ) |  |

Retrieve the size of a valid cursor.

Parameters

  width | The width of a valid cursor.
  height | The height of a valid cursor.

This function returns the size of a cursor that must be passed to ecore_win32_cursor_new(). `width` and `height` are buffers that will be filled with the correct size. They can be `NULL`.

References INF.

EAPI int ecore_win32_dnd_init | ( |  | ) |

Initialize the Ecore_Win32 Drag and Drop module.

Returns
  1 or greater on success, 0 on error.

This function initialize the Drag and Drop module. It returns 0 on failure, otherwise it returns the number of times it has already been called.

When the Drag and Drop module is not used anymore, call ecore_win32_dnd_shutdown() to shut down the module.

References EINA_LOG_ERR.

Referenced by ecore_win32_init().

EAPI int ecore_win32_dnd_shutdown | ( |  | ) |

Shut down the Ecore_Win32 Drag and Drop module.

Returns
  0 when the module is completely shut down, 1 or greater otherwise.

This function shuts down the Drag and Drop module. It returns 0 when it has been called the same number of times than ecore_win32_dnd_init(). In that case it shut down the module.

Referenced by ecore_win32_shutdown().

EAPI Eina_Bool ecore_win32_dnd_begin | ( | const char * | data,
|  | int | size
| ) |  |

Begin a DnD operation.

Parameters

  data | The name pf the Drag operation.
  size | The size of the name.

Returns
  `EINA_TRUE` on success, `EINA_FALSE` otherwise.

This function start a Drag operation with the name `data`. If `data` is `NULL`, `EINA_FALSE` is returned. if `size` is less than `0`, it is set to the length (as strlen()) of `data`. On success the function returns `EINA_TRUE`, otherwise it returns `EINA_FALSE`.

References EINA_FALSE, and EINA_TRUE.

EAPI Eina_Bool ecore_win32_dnd_register_drop_target | ( | Ecore_Win32_Window * | window,
|  | Ecore_Win32_Dnd_DropTarget_Callback | callback
| ) |  |

Register a Drop operation.

Parameters

  window | The destination of the Drop operation.
  callback | The callback called when the Drop operation finishes.

Returns
  `EINA_TRUE` on success, `EINA_FALSE` otherwise.

This function register a Drop operation on `window`. Once the Drop operation finishes, `callback` is called. If `window` is `NULL`, the function returns `EINA_FALSE`. On success, it returns `EINA_TRUE`, otherwise it returns `EINA_FALSE`.

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_win32_dnd_unregister_drop_target | ( | Ecore_Win32_Window * | window | ) |

Unregister a Drop operation.

Parameters

  window | The destination of the Drop operation.

This function unregister a Drop operation on `window`. If `window` is `NULL`, the function does nothing.

EAPI Eina_Bool ecore_win32_clipboard_set | ( | const Ecore_Win32_Window * | window,
|  | const void * | data,
|  | int | size
| ) |  |

Set data to the clipboard.

Parameters

  [in] | window | The window that owns the clipboard.
  [in] | data | The data to set.
  [in] | size | The size of the data.

Returns
  EINA_TRUE on success, EINA_FALSE otherwise.

This function sets `data` of size `size` in the clipboard owned by `window`. This function returns EINA_TRUE on success, and EINA_FALSE otherwise. If `window` or `data` are `NULL`, or `size` is less than or equal to 0, this function returns EINA_FALSE.

Since
  1.16

References EINA_FALSE, EINA_TRUE, and INF.

EAPI Eina_Bool ecore_win32_clipboard_get | ( | const Ecore_Win32_Window * | window,
|  | void ** | data,
|  | int * | size
| ) |  |

Get data from the clipboard.

Parameters

  [in] | window | The window that owns the clipboard.
  [out] | data | The retrieved data.
  [out] | size | The size of the data.

Returns
  EINA_TRUE on success, EINA_FALSE otherwise.

This function gets `data` of size `size` from the clipboard owned by `window`. This function returns EINA_TRUE on success, and EINA_FALSE otherwise. If `window` is `NULL`, this function returns EINA_FALSE. `data` and `size` must be valid buffers.

Since
  1.16

References EINA_FALSE, EINA_TRUE, and INF.

EAPI Eina_Bool ecore_win32_clipboard_clear | ( | const Ecore_Win32_Window * | window | ) |

Cleat the clipboard.

Parameters

  [in] | window | The window that owns the clipboard.

Returns
  EINA_TRUE on success, EINA_FALSE otherwise.

This function clears the clipboard owned by `window`. This function returns EINA_TRUE on success, and EINA_FALSE otherwise. If `window` is `NULL`, this function returns EINA_FALSE.

Since
  1.16

References EINA_FALSE, EINA_TRUE, and INF.

## Variable Documentation

EAPI int ECORE_WIN32_EVENT_SELECTION_CLEAR

Ecore_Event for the Ecore_Win32_Event_Selection_Clear event.

Since
  1.16

EAPI int ECORE_WIN32_EVENT_SELECTION_NOTIFY

Ecore_Event for the Ecore_Win32_Event_Selection_Notify event.

Since
  1.16