protected virtual void cmbProviderChanged(object sender, System.EventArgs e) { Gtk.ComboBox ProviderBox = (Gtk.ComboBox)sender; Gtk.TreeIter ti; ProviderBox.GetActiveIter(out ti); SelectedProviderType = (string)ProviderBox.Model.GetValue(ti, 1); IPastebinProvider Pastebin = PastebinProviderFactory.GetProviderFromPreferences(); //fill treeview with supported codes FillSyntaxBox(Pastebin); }
public override IEnumerable <Item> Perform(IEnumerable <Item> items, IEnumerable <Item> modifierItems) { string text = string.Empty; ITextItem titem = null; foreach (Item item in items) { if (item is IFileItem) { titem = new TextItem(File.ReadAllText((item as IFileItem).Path)); } else { titem = new TextItem((item as ITextItem).Text); } text += titem.Text; } if (string.IsNullOrEmpty(text)) { Services.Notifications.Notify("Pastebin", "No text provided for pasting."); yield break; } IPastebinProvider pastebinProvider = null; if (modifierItems.Any()) { pastebinProvider = PastebinProviderFactory.GetProviderFromPreferences(text, (modifierItems.First() as ITextSyntaxItem).Syntax); } else { pastebinProvider = PastebinProviderFactory.GetProviderFromPreferences(text); } string url = Pastebin.PostUsing(pastebinProvider); if (!string.IsNullOrEmpty(url)) { yield return(new TextItem(url)); } }
public override IEnumerable <Item> DynamicModifierItemsForItem(Item item) { IPastebinProvider pastebinProvider = PastebinProviderFactory.GetProviderFromPreferences(); return(pastebinProvider.SupportedLanguages.OfType <Item> ()); }