private bool InsertSmartContentFromEmbed(string embed) { ContentSourceInfo contentSource = ContentSourceManager.FindContentSource(typeof(VideoContentSource)); if (contentSource != null) { SmartContentSource smartSource = contentSource.Instance as SmartContentSource; VideoContentSource videoSource = smartSource as VideoContentSource; IExtensionData extensionData = _contentSourceSite.CreateExtensionData(Guid.NewGuid().ToString()); ISmartContent smartContent = new SmartContent(extensionData); videoSource.CreateContentFromEmbed(embed, smartContent); // generate html and insert it string content = videoSource.GenerateEditorHtml(smartContent, _contentSourceSite); if (content != null) { _contentSourceSite.InsertContent(VideoContentSource.ID, content, extensionData); return(true); } else { Trace.Fail("Video Source content generated from embed tag was empty"); return(false); } } Trace.Fail("Cannot find the video plugin"); return(false); }
private bool InsertSmartContentFromLiveClipboard(ContentSourceInfo contentSource, XmlDocument lcDocument) { SmartContentSource smartSource = contentSource.Instance as SmartContentSource; if (smartSource == null) { Trace.Fail("Unexpected failure to get live clipboard content-source!"); return(false); } // create the smart content IExtensionData extensionData = _contentSourceSite.CreateExtensionData(Guid.NewGuid().ToString()); ISmartContent smartContent = new SmartContent(extensionData); if (smartSource.CreateContentFromLiveClipboard(EditorContext.FrameWindow, lcDocument, smartContent) == DialogResult.OK) { // generate html and insert it string content = smartSource.GenerateEditorHtml(smartContent, _contentSourceSite); if (content != null) { _contentSourceSite.InsertContent(contentSource.Id, content, extensionData); return(true); } else { return(false); } } else { return(false); } }
private bool InsertSmartContentFromUrl(ContentSourceInfo contentSource, string url) { SmartContentSource smartSource = contentSource.Instance as SmartContentSource; string title = String.Empty; IExtensionData extensionData = _contentSourceSite.CreateExtensionData(Guid.NewGuid().ToString()); ISmartContent smartContent = new SmartContent(extensionData); if (UrlContentRetreivalWithProgress.ExecuteSmartContentRetreival( EditorContext.FrameWindow, contentSource, url, ref title, smartContent)) { string content = smartSource.GenerateEditorHtml(smartContent, _contentSourceSite); if (content != null) { _contentSourceSite.InsertContent(contentSource.Id, content, extensionData); } return(true); } else { return(false); } }
public static void PerformInsertion(IContentSourceSite sourceSite, ContentSourceInfo contentSource) { // record use of content-source (used to list source in MRU order on the sidebar) RecordContentSourceUsage(contentSource.Id); try { if (contentSource.Instance is SmartContentSource) { SmartContentSource scSource = (SmartContentSource)contentSource.Instance; IExtensionData extensionData = sourceSite.CreateExtensionData(Guid.NewGuid().ToString()); // SmartContentSource implementations *must* be stateless (see WinLive 126969), so we wrap up the // internal smart content context and pass it in as a parameter to the CreateContent call. ISmartContent sContent; if (scSource is IInternalSmartContentSource) { sContent = new InternalSmartContent(extensionData, sourceSite as IInternalSmartContentContextSource, contentSource.Id); } else { sContent = new SmartContent(extensionData); } if (scSource.CreateContent(sourceSite.DialogOwner, sContent) == DialogResult.OK) { string content = scSource.GenerateEditorHtml(sContent, sourceSite); if (content != null) { sourceSite.InsertContent(contentSource.Id, content, extensionData); sourceSite.Focus(); if (ApplicationPerformance.ContainsEvent(MediaInsertForm.EventName)) ApplicationPerformance.EndEvent(MediaInsertForm.EventName); } } } else if (contentSource.Instance is ContentSource) { ContentSource sSource = (ContentSource)contentSource.Instance; string newContent = String.Empty; // default try { if (sourceSite.SelectedHtml != null) newContent = sourceSite.SelectedHtml; } catch { } // safely try to provide selected html if (sSource.CreateContent(sourceSite.DialogOwner, ref newContent) == DialogResult.OK) { sourceSite.InsertContent(newContent, contentSource.Id == WebImageContentSource.ID); sourceSite.Focus(); } } } catch (Exception ex) { DisplayContentRetreivalError(sourceSite.DialogOwner, ex, contentSource); } }