public static DataObject ToDataObject(this TransferDataSource data) { var retval = new DataObject(); foreach (var type in data.DataTypes) { var value = data.GetValue(type); if (type == TransferDataType.Text) { retval.SetText((string)value); } else if (type == TransferDataType.Uri) { var uris = new StringCollection(); uris.Add(((Uri)value).LocalPath); retval.SetFileDropList(uris); } else { retval.SetData(type.Id, TransferDataSource.SerializeValue(value)); } } return(retval); }
public static void SetDragData(TransferDataSource data, Gtk.DragDataGetArgs args) { foreach (var t in data.DataTypes) { object val = data.GetValue (t); SetSelectionData (args.SelectionData, t.Id, val); } }
public static void SetDragData(TransferDataSource data, Gtk.DragDataGetArgs args) { foreach (var t in data.DataTypes) { object val = data.GetValue (t); if (val == null) continue; if (val is string) args.SelectionData.Text = (string)data.GetValue (t); else if (val is Xwt.Drawing.Image) args.SelectionData.SetPixbuf ((Gdk.Pixbuf) WidgetRegistry.GetBackend (val)); else { var at = Gdk.Atom.Intern (t, false); args.SelectionData.Set (at, 0, TransferDataSource.SerializeValue (val)); } } }
public static void SetDragData(TransferDataSource data, Gtk.DragDataGetArgs args) { foreach (var t in data.DataTypes) { object val = data.GetValue(t); SetSelectionData(args.SelectionData, t.Id, val); } }
void InitPasteboard(NSPasteboard pb, TransferDataSource data) { pb.ClearContents(); foreach (var t in data.DataTypes) { if (t == TransferDataType.Text) { pb.AddTypes(new string[] { NSPasteboard.NSStringType }, null); pb.SetStringForType((string)data.GetValue(t), NSPasteboard.NSStringType); } } }
public static void SetDragData(TransferDataSource data, Gtk.DragDataGetArgs args) { foreach (var t in data.DataTypes) { object val = data.GetValue(t); if (val == null) { continue; } if (val is string) { args.SelectionData.Text = (string)data.GetValue(t); } else if (val is Xwt.Drawing.Image) { args.SelectionData.SetPixbuf((Gdk.Pixbuf)WidgetRegistry.GetBackend(val)); } else { var at = Gdk.Atom.Intern(t, false); args.SelectionData.Set(at, 0, TransferDataSource.SerializeValue(val)); } } }