Exemplo n.º 1
0
        public static TargetList GetTextTargetList()
        {
            TargetList targetlist = new TargetList();

            targetlist.AddTextTargets((int)TransferDataType.Default);
            return(targetlist);
        }
Exemplo n.º 2
0
        public void CopyLyricsToClipboard()
        {
            Clipboard clipboard = Clipboard.Get(CLIPBOARD_ATOM);
            var       targets   = new TargetList();

            targets.AddTextTargets(TextType);
            clipboard.SetWithData((Gtk.TargetEntry[])targets, ClipboardGetFunc, ClipboardClearFunc);
        }
Exemplo n.º 3
0
        public static void Main(string[] args)
        {
            Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("sl-SI");
            Thread.CurrentThread.CurrentCulture.SetSlovenian();
            Application.Init();
            TargetList lst = new TargetList();

            lst.AddTextTargets(0);
            System.Console.WriteLine(((TargetEntry[])lst).Length);
            foreach (TargetEntry t in ((TargetEntry[])lst))
            {
                System.Console.WriteLine(t.Target);
            }
            MainWindow win = new MainWindow();

            win.Show();
            Application.Run();
        }
Exemplo n.º 4
0
 static FolderTreeView()
 {
     folderTreeSourceTargetList.AddTextTargets((uint)DragDropTargets.TargetType.PlainText);
     folderTreeSourceTargetList.AddUriTargets((uint)DragDropTargets.TargetType.UriList);
     folderTreeSourceTargetList.AddTargetEntry(DragDropTargets.UriQueryEntry);
 }
Exemplo n.º 5
0
        private async Task SetContentAsync(DataPackage content)
        {
            var data          = content?.GetView();
            var targetList    = new TargetList();
            var targetStrings = new List <string>();

            bool CheckFormat(string format, out uint id)
            {
                if (data?.Contains(format) ?? false)
                {
                    id = (uint)targetStrings.Count;
                    targetStrings.Add(format);
                    return(true);
                }
                id = 0;
                return(false);
            }

            async void SetDataNative(Clipboard clipboard, SelectionData nativeData, uint info)
            {
                var format = targetStrings[(int)info];

                var uris = new List <string>();

                // Cannot use switch here, these strings are not constants!!!
                if (format == StandardDataFormats.Text)
                {
                    nativeData.Text = await data.GetTextAsync();
                }
                else if (format == StandardDataFormats.Bitmap)
                {
                    var streamRef = await data.GetBitmapAsync();

                    var uwpStream = await streamRef.OpenReadAsync();

                    var stream = uwpStream.AsStreamForRead();
                    nativeData.SetPixbuf(new Pixbuf(stream));
                }
                else if (format == StandardDataFormats.Html)
                {
                    var htmlString = await data.GetHtmlFormatAsync();

                    nativeData.Set(HtmlContent, 8, Encoding.UTF8.GetBytes(htmlString));
                }
                else if (format == StandardDataFormats.Rtf)
                {
                    var rtfString = await data.GetRtfAsync();

                    nativeData.Set(RtfContent, 8, Encoding.UTF8.GetBytes(rtfString));
                }
                else if (format == StandardDataFormats.StorageItems)
                {
                    var items = await data.GetStorageItemsAsync();

                    var builder = new StringBuilder();

                    builder.AppendLine("copy");
                    foreach (var item in items)
                    {
                        var path = item.Path;
                        builder.AppendLine(FileUriHelper.UrlEncode(path));
                    }

                    nativeData.Set(GnomeCopiedFilesContent, 8, Encoding.UTF8.GetBytes(builder.ToString().Trim()));
                }
                else if (format == StandardDataFormats.ApplicationLink)
                {
                    uris.Add((await data.GetApplicationLinkAsync()).ToString());
                }
                else if (format == StandardDataFormats.WebLink)
                {
                    uris.Add((await data.GetWebLinkAsync()).ToString());
                }
                else if (format == StandardDataFormats.Uri)
                {
                    uris.Add((await data.GetUriAsync()).ToString());
                }

                if (uris.Count != 0)
                {
                    nativeData.SetUris(uris.ToArray());
                }
            }

            uint id;

            if (CheckFormat(StandardDataFormats.Text, out id))
            {
                targetList.AddTextTargets(id);
            }
            if (CheckFormat(StandardDataFormats.Bitmap, out id))
            {
                targetList.AddImageTargets(id, true);
            }
            if (CheckFormat(StandardDataFormats.Html, out id))
            {
                targetList.Add(HtmlContent, 0, id);
            }
            if (CheckFormat(StandardDataFormats.Rtf, out id))
            {
                targetList.Add(RtfContent, 0, id);
            }
            if (CheckFormat(StandardDataFormats.StorageItems, out id))
            {
                targetList.Add(GnomeCopiedFilesContent, 0, id);
            }
            if (CheckFormat(StandardDataFormats.ApplicationLink, out id))
            {
                targetList.AddUriTargets(id);
            }
            if (CheckFormat(StandardDataFormats.WebLink, out id))
            {
                targetList.AddUriTargets(id);
            }
            if (CheckFormat(StandardDataFormats.Uri, out id))
            {
                targetList.AddUriTargets(id);
            }

            _clipboard.SetWithData((TargetEntry [])targetList, SetDataNative, (clipboard) => { });
        }
		public static TargetList GetTextTargetList()
		{
			TargetList targetlist = new TargetList();
			targetlist.AddTextTargets ((int) TransferDataType.Default);
			return (targetlist);
		}
Exemplo n.º 7
0
        public SingleView(SafeUri [] uris)
        {
            uri = uris [0];
            Log.Debug("uri: " + uri);

            var builder = new GtkBeans.Builder("single_view.ui");

            builder.Autoconnect(this);

            LoadPreference(Preferences.VIEWER_WIDTH);
            LoadPreference(Preferences.VIEWER_MAXIMIZED);

            Gtk.Toolbar toolbar = new Gtk.Toolbar();
            toolbar_hbox.PackStart(toolbar);

            rl_button             = GtkUtil.ToolButtonFromTheme("object-rotate-left", Catalog.GetString("Rotate Left"), true);
            rl_button.Clicked    += HandleRotate270Command;
            rl_button.TooltipText = Catalog.GetString("Rotate photo left");
            toolbar.Insert(rl_button, -1);

            rr_button             = GtkUtil.ToolButtonFromTheme("object-rotate-right", Catalog.GetString("Rotate Right"), true);
            rr_button.Clicked    += HandleRotate90Command;
            rr_button.TooltipText = Catalog.GetString("Rotate photo right");
            toolbar.Insert(rr_button, -1);

            toolbar.Insert(new SeparatorToolItem(), -1);

            ToolButton fs_button = GtkUtil.ToolButtonFromTheme("view-fullscreen", Catalog.GetString("Fullscreen"), true);

            fs_button.Clicked    += HandleViewFullscreen;
            fs_button.TooltipText = Catalog.GetString("View photos fullscreen");
            toolbar.Insert(fs_button, -1);

            ToolButton ss_button = GtkUtil.ToolButtonFromTheme("media-playback-start", Catalog.GetString("Slideshow"), true);

            ss_button.Clicked    += HandleViewSlideshow;
            ss_button.TooltipText = Catalog.GetString("View photos in a slideshow");
            toolbar.Insert(ss_button, -1);

            collection = new UriCollection(uris);

            TargetList targetList = new TargetList();

            targetList.AddTextTargets((uint)DragDropTargets.TargetType.PlainText);
            targetList.AddUriTargets((uint)DragDropTargets.TargetType.UriList);

            directory_view = new SelectionCollectionGridView(collection);
            directory_view.Selection.Changed += HandleSelectionChanged;
            directory_view.DragDataReceived  += HandleDragDataReceived;
            Gtk.Drag.DestSet(directory_view, DestDefaults.All, (TargetEntry[])targetList,
                             DragAction.Copy | DragAction.Move);
            directory_view.DisplayTags    = false;
            directory_view.DisplayDates   = false;
            directory_view.DisplayRatings = false;

            directory_scrolled = new ScrolledWindow();
            directory_scrolled.Add(directory_view);

            sidebar = new Sidebar();

            info_vbox.Add(sidebar);
            sidebar.AppendPage(directory_scrolled, Catalog.GetString("Folder"), "gtk-directory");

            AddinManager.AddExtensionNodeHandler("/FSpot/Sidebar", OnSidebarExtensionChanged);

            sidebar.Context = ViewContext.Single;

            sidebar.CloseRequested += HandleHideSidePane;
            sidebar.Show();

            App.Instance.Container.Resolve <IThumbnailLoader> ().OnPixbufLoaded += delegate { directory_view.QueueDraw(); };

            image_view = new PhotoImageView(collection);
            GtkUtil.ModifyColors(image_view);
            GtkUtil.ModifyColors(image_scrolled);
            image_view.ZoomChanged      += HandleZoomChanged;
            image_view.Item.Changed     += HandleItemChanged;
            image_view.ButtonPressEvent += HandleImageViewButtonPressEvent;
            image_view.DragDataReceived += HandleDragDataReceived;
            Gtk.Drag.DestSet(image_view, DestDefaults.All, (TargetEntry[])targetList,
                             DragAction.Copy | DragAction.Move);
            image_scrolled.Add(image_view);

            Window.ShowAll();

            zoom_scale.ValueChanged += HandleZoomScaleValueChanged;

            LoadPreference(Preferences.VIEWER_SHOW_TOOLBAR);
            LoadPreference(Preferences.VIEWER_INTERPOLATION);
            LoadPreference(Preferences.VIEWER_TRANSPARENCY);
            LoadPreference(Preferences.VIEWER_TRANS_COLOR);

            ShowSidebar = collection.Count > 1;

            LoadPreference(Preferences.VIEWER_SHOW_FILENAMES);

            Preferences.SettingChanged += OnPreferencesChanged;
            Window.DeleteEvent         += HandleDeleteEvent;

            collection.Changed += HandleCollectionChanged;

            // wrap the methods to fit to the delegate
            image_view.Item.Changed += delegate(object sender, BrowsablePointerChangedEventArgs old) {
                BrowsablePointer pointer = sender as BrowsablePointer;
                if (pointer == null)
                {
                    return;
                }
                IPhoto [] item = { pointer.Current };
                sidebar.HandleSelectionChanged(new PhotoList(item));
            };

            image_view.Item.Collection.ItemsChanged += sidebar.HandleSelectionItemsChanged;

            UpdateStatusLabel();

            if (collection.Count > 0)
            {
                directory_view.Selection.Add(0);
            }

            export.Submenu = (Mono.Addins.AddinManager.GetExtensionNode("/FSpot/Menus/Exports") as FSpot.Extensions.SubmenuNode).GetMenuItem(this).Submenu;
            export.Submenu.ShowAll();
            export.Activated += HandleExportActivated;
        }