示例#1
0
gboolean
nautilus_drag_can_accept_info (NautilusFile *drop_target_item,
			       NautilusIconDndTargetType drag_type,
			       const GList *items)
{
	switch (drag_type) {
		case NAUTILUS_ICON_DND_GNOME_ICON_LIST:
			return nautilus_drag_can_accept_items (drop_target_item, items);

		case NAUTILUS_ICON_DND_URI_LIST:
		case NAUTILUS_ICON_DND_NETSCAPE_URL:
		case NAUTILUS_ICON_DND_TEXT:
			return nautilus_drag_can_accept_files (drop_target_item);

		case NAUTILUS_ICON_DND_XDNDDIRECTSAVE:
		case NAUTILUS_ICON_DND_RAW:
			return nautilus_drag_can_accept_files (drop_target_item); /* Check if we can accept files at this location */

		case NAUTILUS_ICON_DND_ROOTWINDOW_DROP:
			return FALSE;

		default:
			g_assert_not_reached ();
			return FALSE;
	}
}
gboolean
nautilus_drag_can_accept_info (NautilusFile *drop_target_item,
			       NautilusIconDndTargetType drag_type,
			       const GList *items)
{
	switch (drag_type) {
		case NAUTILUS_ICON_DND_GNOME_ICON_LIST:
			return nautilus_drag_can_accept_items (drop_target_item, items);

		case NAUTILUS_ICON_DND_URI_LIST:
		case NAUTILUS_ICON_DND_NETSCAPE_URL:
		case NAUTILUS_ICON_DND_TEXT:
			return nautilus_drag_can_accept_files (drop_target_item);

		case NAUTILUS_ICON_DND_XDNDDIRECTSAVE:
			return nautilus_drag_can_accept_files (drop_target_item); /* Check if we can accept files at this location */

		case NAUTILUS_ICON_DND_KEYWORD:
			return TRUE;

		case NAUTILUS_ICON_DND_ROOTWINDOW_DROP:
			return FALSE;

		/* TODO return TRUE for folders as soon as drop handling is implemented */
		case NAUTILUS_ICON_DND_COLOR:
		case NAUTILUS_ICON_DND_BGIMAGE:
		case NAUTILUS_ICON_DND_RESET_BACKGROUND:
			return FALSE;

		default:
			g_assert_not_reached ();
			return FALSE;
	}
}