/// <summary> /// Generate page for actual website /// A page is the top-level of generation, so any argument is not needed /// </summary> /// <param name="refPage">page reference</param> /// <param name="masterRefPage">master page reference</param> /// <param name="objects">object list</param> /// <param name="parentConstraint">parent constraint</param> /// <returns>html output</returns> public OutputHTML GenerateProduction(Page refPage, MasterPage masterRefPage, List <MasterObject> objects, ParentConstraint parentConstraint) { throw new NotImplementedException(); }
/// <summary> /// Generate page for design /// A page is the top-level of generation, so any argument is not needed /// </summary> /// <param name="refPage">page reference</param> /// <param name="masterRefPage">master page reference</param> /// <param name="parentConstraint">parent constraint</param> /// <returns>html output</returns> public OutputHTML GenerateDesign(Page refPage, MasterPage masterRefPage, ParentConstraint parentConstraint) { throw new NotImplementedException(); }
private void treeView1_DoubleClick(object sender, EventArgs e) { TreeNode currentSelection = this.treeView1.GetNodeAt(this.treeView1.PointToClient(MousePosition)); if (currentSelection != null) { this.treeView1.SelectedNode = currentSelection; } if (this.treeView1.SelectedNode != null) { if (this.treeView1.SelectedNode.Tag != null) { // sauvegarde selected node this.prv_currentNodeContext = this.treeView1.SelectedNode; if (this.treeView1.SelectedNode.Tag is Library.MasterPage) { Library.MasterPage mp = this.treeView1.SelectedNode.Tag as Library.MasterPage; MasterPageView window = new MasterPageView(mp.Name); window.Text = String.Format(Translate("MasterPageTitle"), mp.Name); window.FormClosed += window_FormClosed; window.MdiParent = this; window.MasterPage = mp; window.WindowState = FormWindowState.Normal; window.StartPosition = FormStartPosition.Manual; window.Top = 0; window.Left = 0; window.Show(); } else if (this.treeView1.SelectedNode.Tag is Library.MasterObject) { Library.MasterObject mo = this.treeView1.SelectedNode.Tag as Library.MasterObject; MasterObjectView window = new MasterObjectView(mo.Title); window.Text = String.Format(Translate("MasterObjectTitle"), mo.Title); window.FormClosed += window_FormClosed; window.MdiParent = this; window.MasterObject = mo; window.WindowState = FormWindowState.Normal; window.StartPosition = FormStartPosition.Manual; window.Top = 0; window.Left = 0; window.Show(); } else if (this.treeView1.SelectedNode.Tag is Library.SculptureObject) { Library.SculptureObject so = this.treeView1.SelectedNode.Tag as Library.SculptureObject; SculptureView window = new SculptureView(); window.Text = String.Format(Translate("SculptureTitle"), so.Title); window.FormClosed += window_FormClosed; window.MdiParent = this; window.SculptureObject = so; if (window.SculptureObject.Cadres.Count == 0) { window.SculptureObject.Cadres.Add(new CadreModel()); } window.CurrentCadreModel.CurrentObject = window.SculptureObject.Cadres[0]; window.WindowState = FormWindowState.Normal; window.StartPosition = FormStartPosition.Manual; window.Top = 0; window.Left = 0; window.Show(); } else if (this.treeView1.SelectedNode.Tag is Library.HTMLTool) { Library.HTMLTool t = this.treeView1.SelectedNode.Tag as Library.HTMLTool; ToolView view = new ToolView(t.Title); view.Text = String.Format(Translate("ToolTitle"), t.Title); view.FormClosed += window_FormClosed; view.MdiParent = this; view.HTMLTool = t; view.WindowState = FormWindowState.Normal; view.StartPosition = FormStartPosition.Manual; view.Top = 0; view.Left = 0; view.Show(); } else if (this.treeView1.SelectedNode.Tag is Library.HTMLObject) { HTMLObject obj = this.treeView1.SelectedNode.Tag as Library.HTMLObject; if (!String.IsNullOrEmpty(obj.MasterObjectName)) { ObjectView view = new ObjectView(obj.Title); view.Text = String.Format(Translate("ObjectTitle"), obj.Title); view.FormClosed += window_FormClosed; view.MdiParent = this; view.HTMLObject = obj; view.WindowState = FormWindowState.Normal; view.StartPosition = FormStartPosition.Manual; view.Top = 0; view.Left = 0; view.Show(); } else { SimpleObjectView view = new SimpleObjectView(obj.Title); view.Text = String.Format(Translate("ObjectTitle"), obj.Title); view.FormClosed += window_FormClosed; view.MdiParent = this; view.HTMLObject = obj; view.WindowState = FormWindowState.Normal; view.StartPosition = FormStartPosition.Manual; view.Top = 0; view.Left = 0; view.Show(); } } else if (this.treeView1.SelectedNode.Tag is Library.Page) { Page p = this.treeView1.SelectedNode.Tag as Library.Page; PageView view = new PageView(p.Name); view.Text = String.Format(Translate("PageTitle"), p.Name); view.FormClosed += window_FormClosed; view.MdiParent = this; view.Page = p; view.WindowState = FormWindowState.Normal; view.StartPosition = FormStartPosition.Manual; view.Top = 0; view.Left = 0; view.Show(); } else if (this.treeView1.SelectedNode.Tag is Library.Configuration) { ConfigView cv = new ConfigView(); cv.FormClosed += window_FormClosed; cv.Datas = (this.treeView1.SelectedNode.Tag as Library.Configuration).Elements; cv.ShowDialog(); } else if (this.treeView1.SelectedNode.Tag is List <string> ) { if (this.treeView1.SelectedNode.Name == "JavaScriptUrls") { JavaScriptUrls ju = new JavaScriptUrls(); ju.FormClosed += window_FormClosed; ju.Datas = (this.treeView1.SelectedNode.Tag as List <string>); ju.ShowDialog(); } else if (this.treeView1.SelectedNode.Name == "CSSUrls") { CSSUrls cu = new CSSUrls(); cu.FormClosed += window_FormClosed; cu.Datas = (this.treeView1.SelectedNode.Tag as List <string>); cu.ShowDialog(); } } } } }
/// <summary> /// Create a destination object and store its into the project /// </summary> /// <param name="proj">project</param> /// <param name="width">width value</param> /// <param name="height">height value</param> /// <param name="h">horizontal count</param> /// <param name="v">vertical count</param> public void CreateDestination(Library.Project proj, uint width, uint height, uint h, uint v) { if (this.Destination == null) { if (this.Type == RefObject.MasterPage) { MasterPage mp = new MasterPage(); mp.Name = this.Name; mp.ConstraintHeight = EnumConstraint.FIXED; mp.Height = height; mp.ConstraintWidth = EnumConstraint.FIXED; mp.Width = width; mp.CountColumns = h; mp.CountLines = v; proj.MasterPages.Add(mp); this.Destination = mp; string[] splitted = mp.ElementTitle.Split('/'); string path = String.Join("/", splitted.Take(splitted.Count() - 1)); mp.Name = splitted.Last(); proj.Add(mp, path); } else if (this.Type == RefObject.Page) { MasterPage mp = new Library.MasterPage(); Page p = new Library.Page(); if (Library.Project.AddPage(proj, p, this.Name)) { mp.Name = "MasterPage_" + System.IO.Path.GetFileNameWithoutExtension(p.Name); mp.ConstraintHeight = EnumConstraint.FIXED; mp.Height = height; mp.ConstraintWidth = EnumConstraint.FIXED; mp.Width = width; mp.CountColumns = h; mp.CountLines = v; proj.MasterPages.Add(mp); p.MasterPageName = mp.Name; p.ConstraintHeight = EnumConstraint.FIXED; p.Height = height; p.ConstraintWidth = EnumConstraint.FIXED; p.Width = width; this.SecondObject = mp; this.Destination = p; } else { throw new ArgumentException(Localization.Strings.GetString("ExceptionPageNotCreated")); } } else if (this.Type == RefObject.MasterObject) { MasterObject mo = new MasterObject(); mo.Title = this.Name; mo.ConstraintHeight = EnumConstraint.FIXED; mo.Height = height; mo.ConstraintWidth = EnumConstraint.FIXED; mo.Width = width; mo.CountColumns = h; mo.CountLines = v; this.Destination = mo; string[] splitted = mo.ElementTitle.Split('/'); string path = String.Join("/", splitted.Take(splitted.Count() - 1)); mo.Name = splitted.Last(); proj.Add(mo, path); } else if (this.Type == RefObject.Tool) { MasterObject mo = new Library.MasterObject(); HTMLTool t = new HTMLTool(); if (Library.Project.AddTool(proj, t, this.Name)) { mo.Name = "MasterObject_" + t.Title; mo.ConstraintHeight = EnumConstraint.FIXED; mo.Height = height; mo.ConstraintWidth = EnumConstraint.FIXED; mo.Width = width; mo.CountColumns = h; mo.CountLines = v; t.ConstraintHeight = EnumConstraint.FIXED; t.ConstraintWidth = EnumConstraint.FIXED; t.Width = width; t.Height = height; this.SecondObject = mo; this.Destination = t; } else { throw new ArgumentException(Localization.Strings.GetString("ExceptionToolNotCreated")); } } } else { if (this.Type == RefObject.MasterPage) { MasterPage mp = this.Destination; for (int index = mp.Objects.Count - 1; index >= 0; --index) { if (proj.Instances.Contains(mp.Objects[index])) { proj.Remove(mp.Objects[index]); } } mp.ConstraintHeight = EnumConstraint.FIXED; mp.Height = height; mp.ConstraintWidth = EnumConstraint.FIXED; mp.Width = width; mp.CountColumns = h; mp.CountLines = v; } else if (this.Type == RefObject.Page) { Page p = this.Destination; MasterPage mp = this.SecondObject; for (int index = mp.Objects.Count - 1; index >= 0; --index) { if (proj.Instances.Contains(mp.Objects[index])) { proj.Remove(mp.Objects[index]); } } for (int index = p.Objects.Count - 1; index >= 0; --index) { if (proj.Instances.Contains(p.Objects[index])) { proj.Remove(p.Objects[index]); } } mp.ConstraintHeight = EnumConstraint.FIXED; mp.Height = height; mp.ConstraintWidth = EnumConstraint.FIXED; mp.Width = width; mp.CountColumns = h; mp.CountLines = v; p.ConstraintHeight = EnumConstraint.FIXED; p.Height = height; p.ConstraintWidth = EnumConstraint.FIXED; p.Width = width; } else if (this.Type == RefObject.MasterObject) { MasterObject mo = this.Destination; for (int index = mo.Objects.Count - 1; index >= 0; --index) { if (proj.Instances.Contains(mo.Objects[index])) { proj.Remove(mo.Objects[index]); } } mo.ConstraintHeight = EnumConstraint.FIXED; mo.Height = height; mo.ConstraintWidth = EnumConstraint.FIXED; mo.Width = width; mo.CountColumns = h; mo.CountLines = v; } else if (this.Type == RefObject.Tool) { HTMLTool t = this.Destination; MasterObject mo = this.SecondObject; for (int index = mo.Objects.Count - 1; index >= 0; --index) { if (proj.Instances.Contains(mo.Objects[index])) { proj.Remove(mo.Objects[index]); } } mo.ConstraintHeight = EnumConstraint.FIXED; mo.Height = height; mo.ConstraintWidth = EnumConstraint.FIXED; mo.Width = width; mo.CountColumns = h; mo.CountLines = v; t.ConstraintHeight = EnumConstraint.FIXED; t.ConstraintWidth = EnumConstraint.FIXED; t.Width = width; t.Height = height; } } }
/// <summary> /// Construct all zones and compute total size /// </summary> /// <param name="list">list of rectangle the user supplied</param> public void MakeZones(List <AreaSizedRectangle> list) { MasterPage.MakeZones(this.CountColumns, this.CountLines, list, this.HorizontalZones, this.Width, this.Height, this.ConstraintWidth, this.ConstraintHeight); }