mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-09-20 14:00:10 +00:00
Move the rest of the drag-source api over
Just reshuffling some source.
This commit is contained in:
parent
e03bdbe307
commit
37b849b808
35
gtk/gtkdnd.c
35
gtk/gtkdnd.c
@ -631,38 +631,3 @@ gtk_drag_dest_drop (GtkWidget *widget,
|
||||
|
||||
return (site->flags & GTK_DEST_DEFAULT_DROP) ? TRUE : retval;
|
||||
}
|
||||
|
||||
/***************
|
||||
* Source side *
|
||||
***************/
|
||||
|
||||
/**
|
||||
* gtk_drag_check_threshold: (method)
|
||||
* @widget: a #GtkWidget
|
||||
* @start_x: X coordinate of start of drag
|
||||
* @start_y: Y coordinate of start of drag
|
||||
* @current_x: current X coordinate
|
||||
* @current_y: current Y coordinate
|
||||
*
|
||||
* Checks to see if a mouse drag starting at (@start_x, @start_y) and ending
|
||||
* at (@current_x, @current_y) has passed the GTK+ drag threshold, and thus
|
||||
* should trigger the beginning of a drag-and-drop operation.
|
||||
*
|
||||
* Returns: %TRUE if the drag threshold has been passed.
|
||||
*/
|
||||
gboolean
|
||||
gtk_drag_check_threshold (GtkWidget *widget,
|
||||
gint start_x,
|
||||
gint start_y,
|
||||
gint current_x,
|
||||
gint current_y)
|
||||
{
|
||||
gint drag_threshold;
|
||||
|
||||
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
|
||||
|
||||
drag_threshold = gtk_settings_get_dnd_drag_threshold (gtk_widget_get_settings (widget));
|
||||
|
||||
return (ABS (current_x - start_x) > drag_threshold ||
|
||||
ABS (current_y - start_y) > drag_threshold);
|
||||
}
|
||||
|
@ -49,15 +49,6 @@ void gtk_drag_highlight (GtkWidget *widget);
|
||||
GDK_AVAILABLE_IN_ALL
|
||||
void gtk_drag_unhighlight (GtkWidget *widget);
|
||||
|
||||
/* Source side */
|
||||
|
||||
GDK_AVAILABLE_IN_ALL
|
||||
gboolean gtk_drag_check_threshold (GtkWidget *widget,
|
||||
gint start_x,
|
||||
gint start_y,
|
||||
gint current_x,
|
||||
gint current_y);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
@ -39,6 +39,7 @@
|
||||
#include "gtkdragiconprivate.h"
|
||||
#include "gtkprivate.h"
|
||||
#include "gtkmarshalers.h"
|
||||
#include "gtksettingsprivate.h"
|
||||
|
||||
/**
|
||||
* SECTION:gtkdragsource
|
||||
@ -781,3 +782,34 @@ gtk_drag_source_drag_cancel (GtkDragSource *source)
|
||||
gdk_drag_drop_done (source->drag, success);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* gtk_drag_check_threshold: (method)
|
||||
* @widget: a #GtkWidget
|
||||
* @start_x: X coordinate of start of drag
|
||||
* @start_y: Y coordinate of start of drag
|
||||
* @current_x: current X coordinate
|
||||
* @current_y: current Y coordinate
|
||||
*
|
||||
* Checks to see if a mouse drag starting at (@start_x, @start_y) and ending
|
||||
* at (@current_x, @current_y) has passed the GTK drag threshold, and thus
|
||||
* should trigger the beginning of a drag-and-drop operation.
|
||||
*
|
||||
* Returns: %TRUE if the drag threshold has been passed.
|
||||
*/
|
||||
gboolean
|
||||
gtk_drag_check_threshold (GtkWidget *widget,
|
||||
int start_x,
|
||||
int start_y,
|
||||
int current_x,
|
||||
int current_y)
|
||||
{
|
||||
gint drag_threshold;
|
||||
|
||||
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
|
||||
|
||||
drag_threshold = gtk_settings_get_dnd_drag_threshold (gtk_widget_get_settings (widget));
|
||||
|
||||
return (ABS (current_x - start_x) > drag_threshold ||
|
||||
ABS (current_y - start_y) > drag_threshold);
|
||||
}
|
||||
|
@ -98,6 +98,13 @@ void gtk_drag_source_attach (GtkDragSource *source,
|
||||
GDK_AVAILABLE_IN_ALL
|
||||
void gtk_drag_source_detach (GtkDragSource *source);
|
||||
|
||||
GDK_AVAILABLE_IN_ALL
|
||||
gboolean gtk_drag_check_threshold (GtkWidget *widget,
|
||||
int start_x,
|
||||
int start_y,
|
||||
int current_x,
|
||||
int current_y);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
@ -37,7 +37,7 @@
|
||||
#include "gtkgesturelongpressprivate.h"
|
||||
#include "gtkgestureprivate.h"
|
||||
#include "gtkmarshalers.h"
|
||||
#include "gtkdnd.h"
|
||||
#include "gtkdragsource.h"
|
||||
#include "gtkprivate.h"
|
||||
#include "gtkintl.h"
|
||||
#include "gtkmarshalers.h"
|
||||
|
Loading…
Reference in New Issue
Block a user