2007-08-26 04:17:21 -07:00
|
|
|
#ifndef __ECORE_WIN32_H__
|
|
|
|
#define __ECORE_WIN32_H__
|
|
|
|
|
2010-09-23 22:30:51 -07:00
|
|
|
/*
|
|
|
|
* DO NOT USE THIS HEADER. IT IS WORK IN PROGRESS. IT IS NOT FINAL AND
|
|
|
|
* THE API MAY CHANGE.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef ECORE_WIN32_WIP_POZEFLKSD
|
2010-12-12 14:49:01 -08:00
|
|
|
# ifdef _MSC_VER
|
|
|
|
# pragma message ("You are using a work in progress API. This API is not stable")
|
|
|
|
# pragma message ("and is subject to change. You use this at your own risk.")
|
|
|
|
# else
|
|
|
|
# warning "You are using a work in progress API. This API is not stable"
|
|
|
|
# warning "and is subject to change. You use this at your own risk."
|
|
|
|
# endif
|
2010-09-23 22:30:51 -07:00
|
|
|
#endif
|
|
|
|
|
2010-09-23 15:18:15 -07:00
|
|
|
#include <Eina.h>
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
#ifdef EAPI
|
|
|
|
# undef EAPI
|
|
|
|
#endif
|
2008-05-25 22:16:34 -07:00
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
# ifdef EFL_ECORE_WIN32_BUILD
|
|
|
|
# ifdef DLL_EXPORT
|
|
|
|
# define EAPI __declspec(dllexport)
|
|
|
|
# else
|
|
|
|
# define EAPI
|
|
|
|
# endif /* ! DLL_EXPORT */
|
2007-08-26 04:17:21 -07:00
|
|
|
# else
|
|
|
|
# define EAPI __declspec(dllimport)
|
2008-05-25 22:16:34 -07:00
|
|
|
# endif /* ! EFL_ECORE_WIN32_BUILD */
|
2007-08-26 04:17:21 -07:00
|
|
|
#else
|
|
|
|
# ifdef __GNUC__
|
|
|
|
# if __GNUC__ >= 4
|
|
|
|
# define EAPI __attribute__ ((visibility("default")))
|
|
|
|
# else
|
|
|
|
# define EAPI
|
|
|
|
# endif
|
|
|
|
# else
|
|
|
|
# define EAPI
|
|
|
|
# endif
|
2008-05-25 22:16:34 -07:00
|
|
|
#endif /* ! _WIN32 */
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
|
2008-11-27 11:30:39 -08:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @defgroup Ecore_Win32_Group Ecore_Win32 library
|
|
|
|
*
|
|
|
|
* @{
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Window_State
|
|
|
|
* State of a window.
|
|
|
|
*/
|
2007-11-16 11:31:32 -08:00
|
|
|
typedef enum
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
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 */
|
2007-11-16 11:31:32 -08:00
|
|
|
} Ecore_Win32_Window_State;
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Window_Type
|
|
|
|
* Type of a window.
|
|
|
|
*/
|
2007-11-16 11:31:32 -08:00
|
|
|
typedef enum
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
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 */
|
2007-11-16 11:31:32 -08:00
|
|
|
} Ecore_Win32_Window_Type;
|
2007-08-26 04:17:21 -07:00
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Cursor_Shape
|
|
|
|
* Shape of a cursor.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef enum
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
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 */
|
2007-09-23 04:08:52 -07:00
|
|
|
} Ecore_Win32_Cursor_Shape;
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_DnD_State
|
|
|
|
* State of a DnD operation.
|
|
|
|
*/
|
|
|
|
typedef enum
|
|
|
|
{
|
|
|
|
ECORE_WIN32_DND_EVENT_DRAG_ENTER = 1, /**< Drag enter */
|
|
|
|
ECORE_WIN32_DND_EVENT_DRAG_OVER = 2, /**< Drag over */
|
|
|
|
ECORE_WIN32_DND_EVENT_DRAG_LEAVE = 3, /**< Drag leave */
|
|
|
|
ECORE_WIN32_DND_EVENT_DROP = 4 /**< Drop */
|
|
|
|
} Ecore_Win32_DnD_State;
|
|
|
|
|
2010-09-23 23:35:30 -07:00
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Window
|
|
|
|
* Abstract type for a window.
|
|
|
|
*/
|
|
|
|
typedef struct _Ecore_Win32_Window Ecore_Win32_Window;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Cursor
|
|
|
|
* Abstract type for a cursor.
|
|
|
|
*/
|
|
|
|
typedef void Ecore_Win32_Cursor;
|
|
|
|
|
2007-08-26 04:17:21 -07:00
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Mouse_In
|
|
|
|
* Event sent when the mouse enters the window.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Mouse_In Ecore_Win32_Event_Mouse_In;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Mouse_Out
|
|
|
|
* Event sent when the mouse leaves the window.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Mouse_Out Ecore_Win32_Event_Mouse_Out;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Focus_In
|
|
|
|
* Event sent when the window gets the focus.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Focus_In Ecore_Win32_Event_Window_Focus_In;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Focus_Out
|
|
|
|
* Event sent when the window looses the focus.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Focus_Out Ecore_Win32_Event_Window_Focus_Out;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Damage
|
|
|
|
* Event sent when the window is damaged.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Damage Ecore_Win32_Event_Window_Damage;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Create
|
|
|
|
* Event sent when the window is created.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Create Ecore_Win32_Event_Window_Create;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Destroy
|
|
|
|
* Event sent when the window is destroyed.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Destroy Ecore_Win32_Event_Window_Destroy;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Hide
|
|
|
|
* Event sent when the window is hidden.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Hide Ecore_Win32_Event_Window_Hide;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Show
|
|
|
|
* Event sent when the window is shown.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Show Ecore_Win32_Event_Window_Show;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Configure
|
|
|
|
* Event sent when the window is configured.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Configure Ecore_Win32_Event_Window_Configure;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Resize
|
|
|
|
* Event sent when the window is resized.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Resize Ecore_Win32_Event_Window_Resize;
|
2010-09-23 11:47:40 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Event_Window_Delete_Request
|
|
|
|
* Event sent when the window is deleted.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
typedef struct _Ecore_Win32_Event_Window_Delete_Request Ecore_Win32_Event_Window_Delete_Request;
|
2007-08-26 04:17:21 -07:00
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Mouse_In
|
|
|
|
* Event sent when the mouse enters the window.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Mouse_In
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
|
|
|
int x; /**< The x coordinate where the mouse leaved */
|
|
|
|
int y; /**< The y coordinate where the mouse entered */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Mouse_Out
|
|
|
|
* Event sent when the mouse leaves the window.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Mouse_Out
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
|
|
|
int x; /**< The x coordinate where the mouse leaved */
|
|
|
|
int y; /**< The y coordinate where the mouse leaved */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Focus_In
|
|
|
|
* Event sent when the window gets the focus.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Focus_In
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Focus_Out
|
|
|
|
* Event sent when the window looses the focus.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Focus_Out
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Damage
|
|
|
|
* Event sent when the window is damaged.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Damage
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
|
|
|
int x; /**< The x coordinate of the top left corner of the damaged region */
|
|
|
|
int y; /**< The y coordinate of the top left corner of the damaged region */
|
|
|
|
int width; /**< The width of the damaged region */
|
2011-05-30 09:17:07 -07:00
|
|
|
int height; /**< The time the event occurred */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Create
|
|
|
|
* Event sent when the window is created.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Create
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-09-23 04:08:52 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Destroy
|
|
|
|
* Event sent when the window is destroyed.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Destroy
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Hide
|
|
|
|
* Event sent when the window is hidden.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Hide
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Show
|
|
|
|
* Event sent when the window is shown.
|
|
|
|
*/
|
2007-08-26 04:17:21 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Show
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Configure
|
|
|
|
* Event sent when the window is configured.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Configure
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2007-09-23 04:08:52 -07:00
|
|
|
Ecore_Win32_Window *abovewin;
|
2010-09-23 11:47:40 -07:00
|
|
|
int x; /**< The new x coordinate of the top left corner */
|
|
|
|
int y; /**< The new y coordinate of the top left corner */
|
|
|
|
int width; /**< The new width */
|
|
|
|
int height; /**< The new height */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-09-23 04:08:52 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Resize
|
|
|
|
* Event sent when the window is resized.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Resize
|
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
|
|
|
int width; /**< The new width */
|
|
|
|
int height; /**< The new height */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-09-23 04:08:52 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @struct _Ecore_Win32_Event_Window_Delete_Request
|
|
|
|
* Event sent when the window is deleted.
|
|
|
|
*/
|
2007-09-23 04:08:52 -07:00
|
|
|
struct _Ecore_Win32_Event_Window_Delete_Request
|
2007-08-26 04:17:21 -07:00
|
|
|
{
|
2010-09-23 11:47:40 -07:00
|
|
|
Ecore_Win32_Window *window; /**< The window that received the event */
|
2011-11-28 22:58:55 -08:00
|
|
|
unsigned long timestamp; /**< The time the event occurred */
|
2007-08-26 04:17:21 -07:00
|
|
|
};
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
/**
|
|
|
|
* @typedef Ecore_Win32_Dnd_DropTarget_Callback
|
|
|
|
* Callback type for Drop operations. See ecore_win32_dnd_register_drop_target().
|
|
|
|
*/
|
2008-11-27 11:30:39 -08:00
|
|
|
typedef int (*Ecore_Win32_Dnd_DropTarget_Callback)(void *window, int event, int pt_x, int pt_y, void *data, int size);
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
EAPI extern int ECORE_WIN32_EVENT_MOUSE_IN; /**< Ecore_Event for the #Ecore_Win32_Event_Mouse_In event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_MOUSE_OUT; /**< Ecore_Event for the #Ecore_Win32_Event_Mouse_Out event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_FOCUS_IN; /**< Ecore_Event for the #Ecore_Win32_Event_Window_Focus_In event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_FOCUS_OUT; /**< Ecore_Event for the #Ecore_Win32_Event_Window_Focus_Out event */
|
2012-04-23 13:09:58 -07:00
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_DAMAGE; /**< Ecore_Event for the Ecore_Win32_Event_Damage event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_CREATE; /**< Ecore_Event for the Ecore_Win32_Event_Create event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_DESTROY; /**< Ecore_Event for the Ecore_Win32_Event_Destroy event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_HIDE; /**< Ecore_Event for the Ecore_Win32_Event_Hide event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_SHOW; /**< Ecore_Event for the Ecore_Win32_Event_Show event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_CONFIGURE; /**< Ecore_Event for the Ecore_Win32_Event_Configure event */
|
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_RESIZE; /**< Ecore_Event for the Ecore_Win32_Event_Resize event */
|
2010-09-23 11:47:40 -07:00
|
|
|
EAPI extern int ECORE_WIN32_EVENT_WINDOW_DELETE_REQUEST; /**< Ecore_Event for the #Ecore_Win32_Event_Window_Delete_Request event */
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
|
|
|
|
/* Core */
|
2008-05-30 22:06:38 -07:00
|
|
|
|
2011-11-28 22:58:55 -08:00
|
|
|
EAPI int ecore_win32_init();
|
|
|
|
EAPI int ecore_win32_shutdown();
|
|
|
|
EAPI int ecore_win32_screen_depth_get();
|
|
|
|
EAPI void ecore_win32_double_click_time_set(double t);
|
|
|
|
EAPI double ecore_win32_double_click_time_get(void);
|
|
|
|
EAPI unsigned long ecore_win32_current_time_get(void);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
/* Window */
|
|
|
|
|
|
|
|
EAPI Ecore_Win32_Window *ecore_win32_window_new(Ecore_Win32_Window *parent,
|
|
|
|
int x,
|
|
|
|
int y,
|
|
|
|
int width,
|
|
|
|
int height);
|
2007-11-16 11:31:32 -08:00
|
|
|
EAPI Ecore_Win32_Window *ecore_win32_window_override_new(Ecore_Win32_Window *parent,
|
|
|
|
int x,
|
|
|
|
int y,
|
|
|
|
int width,
|
|
|
|
int height);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
2009-04-10 01:46:41 -07:00
|
|
|
EAPI void ecore_win32_window_free(Ecore_Win32_Window *window);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
2008-06-29 07:12:16 -07:00
|
|
|
EAPI void *ecore_win32_window_hwnd_get(Ecore_Win32_Window *window);
|
|
|
|
|
2007-08-26 04:17:21 -07:00
|
|
|
EAPI void ecore_win32_window_move(Ecore_Win32_Window *window,
|
|
|
|
int x,
|
|
|
|
int y);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_resize(Ecore_Win32_Window *window,
|
|
|
|
int width,
|
|
|
|
int height);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_move_resize(Ecore_Win32_Window *window,
|
|
|
|
int x,
|
|
|
|
int y,
|
|
|
|
int width,
|
|
|
|
int height);
|
|
|
|
|
2007-09-23 04:08:52 -07:00
|
|
|
EAPI void ecore_win32_window_geometry_get(Ecore_Win32_Window *window,
|
|
|
|
int *x,
|
|
|
|
int *y,
|
|
|
|
int *width,
|
|
|
|
int *height);
|
|
|
|
|
2007-08-26 04:17:21 -07:00
|
|
|
EAPI void ecore_win32_window_size_get(Ecore_Win32_Window *window,
|
|
|
|
int *width,
|
|
|
|
int *height);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_min_set(Ecore_Win32_Window *window,
|
2007-11-16 11:31:32 -08:00
|
|
|
unsigned int min_width,
|
|
|
|
unsigned int min_height);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_min_get(Ecore_Win32_Window *window,
|
|
|
|
unsigned int *min_width,
|
|
|
|
unsigned int *min_height);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_max_set(Ecore_Win32_Window *window,
|
2007-11-16 11:31:32 -08:00
|
|
|
unsigned int max_width,
|
|
|
|
unsigned int max_height);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_max_get(Ecore_Win32_Window *window,
|
|
|
|
unsigned int *max_width,
|
|
|
|
unsigned int *max_height);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_base_set(Ecore_Win32_Window *window,
|
2007-11-16 11:31:32 -08:00
|
|
|
unsigned int base_width,
|
|
|
|
unsigned int base_height);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_base_get(Ecore_Win32_Window *window,
|
|
|
|
unsigned int *base_width,
|
|
|
|
unsigned int *base_height);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_step_set(Ecore_Win32_Window *window,
|
2007-11-16 11:31:32 -08:00
|
|
|
unsigned int step_width,
|
|
|
|
unsigned int step_height);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_size_step_get(Ecore_Win32_Window *window,
|
|
|
|
unsigned int *step_width,
|
|
|
|
unsigned int *step_height);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
EAPI void ecore_win32_window_show(Ecore_Win32_Window *window);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_hide(Ecore_Win32_Window *window);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_raise(Ecore_Win32_Window *window);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_lower(Ecore_Win32_Window *window);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_title_set(Ecore_Win32_Window *window,
|
|
|
|
const char *title);
|
|
|
|
|
2012-03-19 21:09:51 -07:00
|
|
|
EAPI void ecore_win32_window_focus(Ecore_Win32_Window *window);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
2012-03-19 21:35:18 -07:00
|
|
|
EAPI void *ecore_win32_window_focus_get(void);
|
|
|
|
|
2007-08-26 04:17:21 -07:00
|
|
|
EAPI void ecore_win32_window_iconified_set(Ecore_Win32_Window *window,
|
2010-09-23 11:47:40 -07:00
|
|
|
Eina_Bool on);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
EAPI void ecore_win32_window_borderless_set(Ecore_Win32_Window *window,
|
2010-09-23 11:47:40 -07:00
|
|
|
Eina_Bool on);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
|
|
|
EAPI void ecore_win32_window_fullscreen_set(Ecore_Win32_Window *window,
|
2010-09-23 11:47:40 -07:00
|
|
|
Eina_Bool on);
|
2007-08-26 04:17:21 -07:00
|
|
|
|
2007-09-23 04:08:52 -07:00
|
|
|
EAPI void ecore_win32_window_cursor_set(Ecore_Win32_Window *window,
|
|
|
|
Ecore_Win32_Cursor *cursor);
|
|
|
|
|
2007-11-16 11:31:32 -08:00
|
|
|
EAPI void ecore_win32_window_state_set(Ecore_Win32_Window *window,
|
|
|
|
Ecore_Win32_Window_State *state,
|
|
|
|
unsigned int num);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_state_request_send(Ecore_Win32_Window *window,
|
|
|
|
Ecore_Win32_Window_State state,
|
|
|
|
unsigned int set);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_window_type_set(Ecore_Win32_Window *window,
|
|
|
|
Ecore_Win32_Window_Type type);
|
|
|
|
|
2007-09-23 04:08:52 -07:00
|
|
|
/* Cursor */
|
|
|
|
|
|
|
|
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);
|
|
|
|
|
|
|
|
EAPI void ecore_win32_cursor_free(Ecore_Win32_Cursor *cursor);
|
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
EAPI Ecore_Win32_Cursor *ecore_win32_cursor_shaped_new(Ecore_Win32_Cursor_Shape shape);
|
2007-09-23 04:08:52 -07:00
|
|
|
|
2010-09-23 11:47:40 -07:00
|
|
|
EAPI void ecore_win32_cursor_size_get(int *width, int *height);
|
2007-09-23 04:08:52 -07:00
|
|
|
|
2007-11-16 11:31:32 -08:00
|
|
|
|
2008-11-27 11:30:39 -08:00
|
|
|
|
|
|
|
/* Drag and drop */
|
2010-09-23 11:47:40 -07:00
|
|
|
EAPI int ecore_win32_dnd_init();
|
|
|
|
EAPI int ecore_win32_dnd_shutdown();
|
|
|
|
EAPI Eina_Bool ecore_win32_dnd_begin(const char *data,
|
|
|
|
int size);
|
|
|
|
EAPI Eina_Bool ecore_win32_dnd_register_drop_target(Ecore_Win32_Window *window,
|
|
|
|
Ecore_Win32_Dnd_DropTarget_Callback callback);
|
|
|
|
EAPI void ecore_win32_dnd_unregister_drop_target(Ecore_Win32_Window *window);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @}
|
|
|
|
*/
|
2008-11-27 11:30:39 -08:00
|
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
2007-08-26 04:17:21 -07:00
|
|
|
#endif /* __ECORE_WIN32_H__ */
|