protected override void OnStartModule() { var htmlBox = new HtmlBox(htmlHost, 500, 40); viewport.AddContent(htmlBox); //design buttons here string htmltext = @"<html><head></head><body id='body_elem'> <span id='cmd_box' style='padding:2px'>Box</span> <span id='cmd_rect' style='padding:2px'>Rect</span> <span id='cmd_img' style='padding:2px'>Image</span> </body></html>"; htmlBox.LoadHtmlString(htmltext); var dom1 = htmlBox.HtmlContainer.WebDocument as LayoutFarm.WebDom.IHtmlDocument; if (dom1 != null) { var bodyElemet = dom1.getElementById("body_elem"); bodyElemet.attachEventListener("mousedown", e => { var srcElement = e.ExactHitObject; HtmlBoxes.CssRun run = srcElement as HtmlBoxes.CssRun; if (run != null) { menuItemClick(this, new MenuItemClickEventArgs(run.Text)); } e.StopPropagation(); }); } }
protected override void OnStartDemo(SampleViewport viewport) { this.viewport = viewport; this.htmlhost = HtmlHostCreatorHelper.CreateHtmlHost(viewport, null, null); SetupHtmlMenuBox(); //================================================== //box1 test area //html box this.testHtmlBox = new HtmlBox(htmlhost, 800, 400); testHtmlBox.SetLocation(30, 50); viewport.AddContent(testHtmlBox); string html = @"<html><head></head><body><div id='div1'>OK1</div><div>OK2</div></body></html>"; testHtmlBox.LoadHtmlString(html); //================================================== }
protected override void OnStartDemo(SampleViewport viewport) { var appPath = System.Windows.Forms.Application.ExecutablePath; int pos = appPath.IndexOf("\\bin\\"); if (pos > -1) { string sub01 = appPath.Substring(0, pos); imgFolderPath = sub01 + "\\images"; } //================================================== //html box var htmlBox = new HtmlBox(GetHtmlHost(viewport), 800, 600); viewport.AddContent(htmlBox); string html = "<html><head></head><body><div>OK1</div><div>3 Images</div><img src=\"sample01.png\"></img><img src=\"sample01.png\"></img><img src=\"sample01.png\"></img></body></html>"; htmlBox.LoadHtmlString(html); }
protected override void OnStartDemo(SampleViewport viewport) { //html box var contentMx = new LayoutFarm.ContentManagers.ImageContentManager(); contentMx.ImageLoadingRequest += contentMx_ImageLoadingRequest; var host = HtmlHostCreatorHelper.CreateHtmlHost(viewport, (s, e) => contentMx.AddRequestImage(e.ImageBinder), contentMx_LoadStyleSheet); htmlBox = new HtmlBox(host, 1024, 800); viewport.AddContent(htmlBox); if (htmltext == null) { htmltext = @"<html><head></head><body>NOT FOUND!</body></html>"; } htmlBox.LoadHtmlString(htmltext); }
protected override void OnStartDemo(SampleViewport viewport) { var htmlhost = HtmlHostCreatorHelper.CreateHtmlHost(viewport, null, null); ////================================================== //html box var htmlBox = new HtmlBox(htmlhost, 800, 400); htmlBox.SetLocation(30, 30); viewport.AddContent(htmlBox); string html = @"<html><head></head><body><div>OK1</div><div>OK2</div></body></html>"; htmlBox.LoadHtmlString(html); //================================================== //textbox var textbox = new LayoutFarm.CustomWidgets.TextBox(400, 100, true); textbox.SetLocation(0, 200); viewport.AddContent(textbox); textbox.Focus(); }
public virtual void OnViewportReady(SampleViewport viewport) { //html box var contentMx = new LayoutFarm.ContentManagers.ImageContentManager(); contentMx.ImageLoadingRequest += contentMx_ImageLoadingRequest; var host = HtmlHostCreatorHelper.CreateHtmlHost(viewport, (s, e) => contentMx.AddRequestImage(e.ImageBinder), contentMx_LoadStyleSheet); //1. htmlbox int viewportW = viewport.ViewportControl.Width; int viewportH = viewport.ViewportControl.Height; htmlBox = new HtmlBox(host, viewportW, viewportH); viewport.AddContent(htmlBox); if (htmltext == null) { htmltext = @"<html><head></head><body>NOT FOUND!</body></html>"; } htmlBox.LoadHtmlString(htmltext); }
protected override void OnStartDemo(SampleViewport viewport) { ////================================================== //html box var htmlHost = HtmlHostCreatorHelper.CreateHtmlHost(viewport, null, null); var htmlBox = new HtmlBox(htmlHost, 800, 400); StringBuilder stbuilder = new StringBuilder(); stbuilder.Append("<html><head></head><body>"); stbuilder.Append("<div>custom box1</div>"); stbuilder.Append("<x id=\"my_custombox1\"></x>"); stbuilder.Append("<div>custom box2</div>"); stbuilder.Append("<x type=\"textbox\" id=\"my_custombox1\"></x>"); stbuilder.Append("</body></html>"); htmlBox.LoadHtmlString(stbuilder.ToString()); viewport.AddContent(htmlBox); //================================================== //textbox var textbox = new LayoutFarm.CustomWidgets.TextBox(400, 100, true); textbox.SetLocation(0, 200); viewport.AddContent(textbox); textbox.Focus(); }
void SetupHtmlMenuBox() { //================================================== this.htmlMenuBox = new HtmlBox(htmlhost, 800, 40); htmlMenuBox.SetLocation(30, 0); viewport.AddContent(htmlMenuBox); string html = @"<html><head></head><body> <div id='menubox'> <span id='test_dom1'>click to toggle!</span> <span id='test_dom2'>test document fragment</span> <span id='test_dom3'>test showdow dom</span> </div> </body></html>"; htmlMenuBox.LoadHtmlString(html); //set event handlers var htmldoc = htmlMenuBox.HtmlContainer.WebDocument as IHtmlDocument; var div_menuBox = htmldoc.getElementById("menubox") as IHtmlElement; if (div_menuBox == null) return; //test set innerHTML div_menuBox.attachEventListener("mousedown", (e) => { var contextE = e.SourceHitElement as IHtmlElement; switch (contextE.id) { case "test_dom1": { //test toggle with innerHTML var testHtmlDoc = testHtmlBox.HtmlContainer.WebDocument as IHtmlDocument; var div1 = testHtmlDoc.getElementById("div1") as IHtmlElement; if (div1 != null) { //test set innerHTML div1.innerHTML = testToggle ? "<div>11111</div>" : "<div>22222</div>"; testToggle = !testToggle; } } break; case "test_dom2": { //test toggle with DocumentFragment var testHtmlDoc = testHtmlBox.HtmlContainer.WebDocument as IHtmlDocument; var div1 = testHtmlDoc.getElementById("div1") as IHtmlElement; if (div1 != null) { var docFragment = testHtmlDoc.createDocumentFragment(); if (testToggle) { var node1 = docFragment.createElement("div") as IHtmlElement; node1.appendChild( docFragment.createTextNode("3333"));//TODO: review this docFragment.rootNode.appendChild(node1); } else { var node1 = docFragment.createElement("div") as IHtmlElement; node1.appendChild( docFragment.createTextNode("4444"));//TODO: review this docFragment.rootNode.appendChild(node1); } div1.clear(); div1.appendChild(docFragment.rootNode); testToggle = !testToggle; } } break; case "test_dom3": { //shadow dom! var testHtmlDoc = testHtmlBox.HtmlContainer.WebDocument as IHtmlDocument; var div1 = testHtmlDoc.getElementById("div1") as IHtmlElement; if (div1 != null) { var shadowRoot = testHtmlDoc.createShadowRootElement() as IHtmlElement; if (testToggle) { var node1 = testHtmlDoc.createElement("div") as IHtmlElement; node1.appendChild( testHtmlDoc.createTextNode("XXX"));//TODO: review this //add node1 to shadow root element shadowRoot.appendChild(node1); } else { var node1 = testHtmlDoc.createElement("div") as IHtmlElement; node1.appendChild( testHtmlDoc.createTextNode("YYY"));//TODO: review this //add node1 to shadow root element shadowRoot.appendChild(node1); } div1.clear(); div1.appendChild(shadowRoot); testToggle = !testToggle; } } break; } }); }