Implement gdk_drag_context_{get,set}_device in Quartz backend
This commit is contained in:
parent
95a1c31c18
commit
03a313d2a9
@ -87,6 +87,56 @@ gdk_drag_context_new (void)
|
|||||||
return (GdkDragContext *)g_object_new (gdk_drag_context_get_type (), NULL);
|
return (GdkDragContext *)g_object_new (gdk_drag_context_get_type (), NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gdk_drag_context_set_device:
|
||||||
|
* @context: a #GdkDragContext
|
||||||
|
* @device: a #GdkDevice
|
||||||
|
*
|
||||||
|
* Associates a #GdkDevice to @context, so all Drag and Drop events
|
||||||
|
* for @context are emitted as if they came from this device.
|
||||||
|
**/
|
||||||
|
void
|
||||||
|
gdk_drag_context_set_device (GdkDragContext *context,
|
||||||
|
GdkDevice *device)
|
||||||
|
{
|
||||||
|
GdkDragContextPrivate *private;
|
||||||
|
|
||||||
|
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
|
||||||
|
g_return_if_fail (GDK_IS_DEVICE (device));
|
||||||
|
|
||||||
|
private = GDK_DRAG_CONTEXT_PRIVATE (context);
|
||||||
|
|
||||||
|
if (private->device)
|
||||||
|
{
|
||||||
|
g_object_unref (private->device);
|
||||||
|
private->device = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (device)
|
||||||
|
private->device = g_object_ref (device);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gdk_drag_context_get_device:
|
||||||
|
* @context: a #GdkDragContext
|
||||||
|
*
|
||||||
|
* Returns the #GdkDevice associated to the drag context.
|
||||||
|
*
|
||||||
|
* Returns: The #GdkDevice associated to @context.
|
||||||
|
**/
|
||||||
|
GdkDevice *
|
||||||
|
gdk_drag_context_get_device (GdkDragContext *context)
|
||||||
|
{
|
||||||
|
GdkDragContextPrivate *private;
|
||||||
|
|
||||||
|
g_return_val_if_fail (GDK_IS_DRAG_CONTEXT (context), NULL);
|
||||||
|
|
||||||
|
private = GDK_DRAG_CONTEXT_PRIVATE (context);
|
||||||
|
|
||||||
|
return private->device;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
GdkDragContext *_gdk_quartz_drag_source_context = NULL;
|
GdkDragContext *_gdk_quartz_drag_source_context = NULL;
|
||||||
|
|
||||||
GdkDragContext *
|
GdkDragContext *
|
||||||
|
@ -94,6 +94,7 @@ struct _GdkCursorPrivate
|
|||||||
struct _GdkDragContextPrivate
|
struct _GdkDragContextPrivate
|
||||||
{
|
{
|
||||||
id <NSDraggingInfo> dragging_info;
|
id <NSDraggingInfo> dragging_info;
|
||||||
|
GdkDevice *device;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern GdkDisplay *_gdk_display;
|
extern GdkDisplay *_gdk_display;
|
||||||
|
Loading…
Reference in New Issue
Block a user