gdkdnd-win32.c File Reference

#include "config.h"
#include <string.h>
#include "gdkdnd.h"
#include "gdkproperty.h"
#include "gdkprivate.h"
#include "gdkwin32.h"
#include <objbase.h>
#include <shlobj.h>
#include <shlguid.h>
#include <gdk/gdk.h>

Go to the source code of this file.

Classes

struct  _GdkDragContextPrivate
struct  target_drag_context
struct  source_drag_context

Defines

#define INITGUID

Typedefs

typedef _GdkDragContextPrivate GdkDragContextPrivate

Enumerations

enum  GtkDragStatus
enum  GdkDragKind

Functions

GdkDragContextgdk_drag_context_new (void)
void gdk_drag_context_ref (GdkDragContext *context)
void gdk_drag_context_unref (GdkDragContext *context)
static target_drag_contexttarget_context_new (void)
static source_drag_contextsource_context_new (void)
static HRESULT resolve_link (HWND hWnd, LPCTSTR lpszLinkName, LPSTR lpszPath, LPSTR lpszDescription)
static GdkFilterReturn gdk_dropfiles_filter (GdkXEvent *xev, GdkEvent *event, gpointer data)
void gdk_dnd_init (void)
void gdk_win32_dnd_exit (void)
static void gdk_drag_do_leave (GdkDragContext *context, guint32 time)
GdkDragContextgdk_drag_begin (GdkWindow *window, GList *targets)
guint32 gdk_drag_get_protocol (guint32 xid, GdkDragProtocol *protocol)
void gdk_drag_find_window (GdkDragContext *context, GdkWindow *drag_window, gint x_root, gint y_root, GdkWindow **dest_window, GdkDragProtocol *protocol)
gboolean gdk_drag_motion (GdkDragContext *context, GdkWindow *dest_window, GdkDragProtocol protocol, gint x_root, gint y_root, GdkDragAction suggested_action, GdkDragAction possible_actions, guint32 time)
void gdk_drag_drop (GdkDragContext *context, guint32 time)
void gdk_drag_abort (GdkDragContext *context, guint32 time)
void gdk_drag_status (GdkDragContext *context, GdkDragAction action, guint32 time)
void gdk_drop_reply (GdkDragContext *context, gboolean ok, guint32 time)
void gdk_drop_finish (GdkDragContext *context, gboolean success, guint32 time)
static GdkFilterReturn gdk_destroy_filter (GdkXEvent *xev, GdkEvent *event, gpointer data)
void gdk_window_register_dnd (GdkWindow *window)
GdkAtom gdk_drag_get_selection (GdkDragContext *context)

Variables

GdkDragContextcurrent_dest_drag = NULL
static GListcontexts


Define Documentation

#define INITGUID

Definition at line 34 of file gdkdnd-win32.c.


Typedef Documentation

typedef struct _GdkDragContextPrivate GdkDragContextPrivate

Definition at line 52 of file gdkdnd-win32.c.


Enumeration Type Documentation

enum GdkDragKind

Definition at line 61 of file gdkdnd-win32.c.

enum GtkDragStatus

Definition at line 54 of file gdkdnd-win32.c.


Function Documentation

static GdkFilterReturn gdk_destroy_filter ( GdkXEvent xev,
GdkEvent event,
gpointer  data 
) [static]

Definition at line 799 of file gdkdnd-win32.c.

References FALSE, g_print(), GDK_FILTER_CONTINUE, GDK_NOTE, and TRUE.

Referenced by gdk_window_register_dnd().

void gdk_dnd_init ( void   ) 

Definition at line 659 of file gdkdnd-win32.c.

References g_error(), and NULL.

Referenced by gdk_init_check().

void gdk_drag_abort ( GdkDragContext context,
guint32  time 
)

Definition at line 773 of file gdkdnd-win32.c.

References g_return_if_fail, gdk_drag_do_leave(), and NULL.

GdkDragContext* gdk_drag_begin ( GdkWindow window,
GList targets 
)

Definition at line 688 of file gdkdnd-win32.c.

References _GdkDragContext::actions, source_drag_context::context, g_list_last(), g_list_prepend(), g_print(), g_return_val_if_fail, GDK_NOTE, gdk_window_ref, _GdkDragContext::is_source, NULL, source_context_new(), _GdkDragContext::source_window, _GdkDragContext::targets, and TRUE.

GdkDragContext* gdk_drag_context_new ( void   ) 

Definition at line 105 of file gdkdnd-win32.c.

References contexts, g_list_prepend(), g_new0, and result().

Referenced by gdk_dropfiles_filter(), source_context_new(), and target_context_new().

void gdk_drag_context_ref ( GdkDragContext context  ) 

Definition at line 118 of file gdkdnd-win32.c.

References g_return_if_fail, and NULL.

Referenced by gdk_dropfiles_filter(), and gdk_event_copy().

void gdk_drag_context_unref ( GdkDragContext context  ) 

Definition at line 125 of file gdkdnd-win32.c.

References contexts, _GdkDragContext::dest_window, g_dataset_destroy(), g_free(), g_list_free(), g_list_remove(), g_print(), g_return_if_fail, GDK_NOTE, gdk_window_unref, NULL, private, _GdkDragContext::source_window, and _GdkDragContext::targets.

Referenced by gdk_event_free().

static void gdk_drag_do_leave ( GdkDragContext context,
guint32  time 
) [static]

Definition at line 679 of file gdkdnd-win32.c.

References _GdkDragContext::dest_window, g_print(), GDK_NOTE, gdk_window_unref, and NULL.

Referenced by gdk_drag_abort().

void gdk_drag_drop ( GdkDragContext context,
guint32  time 
)

Definition at line 766 of file gdkdnd-win32.c.

References g_return_if_fail, g_warning(), and NULL.

void gdk_drag_find_window ( GdkDragContext context,
GdkWindow drag_window,
gint  x_root,
gint  y_root,
GdkWindow **  dest_window,
GdkDragProtocol protocol 
)

Definition at line 725 of file gdkdnd-win32.c.

References g_print(), GDK_DRAG_PROTO_WIN32_DROPFILES, GDK_DRAWABLE_XID, GDK_NOTE, gdk_window_lookup, gdk_window_ref, NULL, POINT::x, and POINT::y.

guint32 gdk_drag_get_protocol ( guint32  xid,
GdkDragProtocol protocol 
)

Definition at line 718 of file gdkdnd-win32.c.

GdkAtom gdk_drag_get_selection ( GdkDragContext context  ) 

Definition at line 865 of file gdkdnd-win32.c.

References GDK_DRAG_PROTO_OLE2, GDK_DRAG_PROTO_WIN32_DROPFILES, GDK_NONE, gdk_ole2_dnd_atom, gdk_win32_dropfiles_atom, and _GdkDragContext::protocol.

gboolean gdk_drag_motion ( GdkDragContext context,
GdkWindow dest_window,
GdkDragProtocol  protocol,
gint  x_root,
gint  y_root,
GdkDragAction  suggested_action,
GdkDragAction  possible_actions,
guint32  time 
)

Definition at line 755 of file gdkdnd-win32.c.

References FALSE.

void gdk_drag_status ( GdkDragContext context,
GdkDragAction  action,
guint32  time 
)

Definition at line 783 of file gdkdnd-win32.c.

References g_print(), and GDK_NOTE.

void gdk_drop_finish ( GdkDragContext context,
gboolean  success,
guint32  time 
)

Definition at line 794 of file gdkdnd-win32.c.

void gdk_drop_reply ( GdkDragContext context,
gboolean  ok,
guint32  time 
)

Definition at line 789 of file gdkdnd-win32.c.

static GdkFilterReturn gdk_dropfiles_filter ( GdkXEvent xev,
GdkEvent event,
gpointer  data 
) [static]

Definition at line 585 of file gdkdnd-win32.c.

References _GdkEvent::any, _GdkEventDND::context, current_dest_drag, _GdkDragContext::dest_window, _GdkEvent::dnd, FALSE, g_list_append(), g_print(), g_string_append(), g_string_new(), gdk_atom_intern(), gdk_drag_context_new(), gdk_drag_context_ref(), GDK_DRAG_PROTO_WIN32_DROPFILES, GDK_DROP_START, GDK_FILTER_CONTINUE, GDK_FILTER_TRANSLATE, GDK_NONE, GDK_NOTE, gdk_parent_root, gdk_sel_prop_store(), gdk_window_ref, GUINT_TO_POINTER, HANDLE, i, _GdkDragContext::is_source, k, nfiles, NULL, _GdkDragContext::protocol, resolve_link(), result(), _GdkDragContext::source_window, _GdkDragContext::targets, _GdkEventDND::time, _GdkEventDND::type, _GdkEventAny::window, POINT::x, _GdkEventDND::x_root, POINT::y, and _GdkEventDND::y_root.

Referenced by gdk_window_register_dnd().

void gdk_win32_dnd_exit ( void   ) 

Definition at line 670 of file gdkdnd-win32.c.

Referenced by gdk_windowing_exit().

void gdk_window_register_dnd ( GdkWindow window  ) 

Definition at line 817 of file gdkdnd-win32.c.

References FALSE, g_print(), g_return_if_fail, gdk_destroy_filter(), GDK_DRAWABLE_XID, gdk_dropfiles_filter(), GDK_NOTE, gdk_window_add_filter(), NULL, OTHER_API_FAILED, target_context_new(), and TRUE.

static HRESULT resolve_link ( HWND  hWnd,
LPCTSTR  lpszLinkName,
LPSTR  lpszPath,
LPSTR  lpszDescription 
) [static]

Definition at line 519 of file gdkdnd-win32.c.

References FALSE, LPVOID, and NULL.

Referenced by gdk_dropfiles_filter().

static source_drag_context* source_context_new ( void   )  [static]

Definition at line 492 of file gdkdnd-win32.c.

References g_new0, gdk_drag_context_new(), and result().

Referenced by gdk_drag_begin().

static target_drag_context* target_context_new ( void   )  [static]

Definition at line 477 of file gdkdnd-win32.c.

References g_new0, gdk_drag_context_new(), and result().

Referenced by gdk_window_register_dnd().


Variable Documentation

GList* contexts [static]

Definition at line 103 of file gdkdnd-win32.c.

Referenced by gdk_drag_context_new(), and gdk_drag_context_unref().

GdkDragContext* current_dest_drag = NULL

Definition at line 99 of file gdkdnd-win32.c.

Referenced by gdk_dropfiles_filter().


Generated on Tue Jul 5 15:58:42 2011 for ROOT_528-00b_version by  doxygen 1.5.1