public void OpenProject() { UXFramework.UXTree tree = CreateTreeView(0, currentProject, currentNode); UXFramework.UXBox box = UXFramework.Creation.CreateBox(null, 1120, 0); Marshalling.MarshallingHash hash = Marshalling.MarshallingHash.CreateMarshalling("left", () => { return(new Dictionary <string, dynamic>() { { "Width", 220 }, { "Constraint-Width", "FIXED" }, }); }); UXFramework.UXCell c1 = UXFramework.Creation.CreateCell(hash, tree); hash = Marshalling.MarshallingHash.CreateMarshalling("right", () => { return(new Dictionary <string, dynamic>() { { "Width", 1100 }, { "Constraint-Width", "FIXED" }, }); }); UXFramework.UXCell c2 = UXFramework.Creation.CreateCell(hash, box); hash = Marshalling.MarshallingHash.CreateMarshalling("row", () => { return(new Dictionary <string, dynamic>() { { "Disposition", "LEFT_TOP" }, { "align", "left" }, { "valign", "top" } }); }); UXFramework.UXRow row = UXFramework.Creation.CreateRow(2, hash, c1, c2); UXFramework.UXTable table = UXFramework.Creation.CreateTable("boxes", 2, 1, null, row); UXFramework.UXWindow win = UXFramework.UXWindow.CreateUXWindow("openProject", () => { return(new Dictionary <string, dynamic>() { { "Width", 1320 }, { "Height", 700 }, { "Constraint-Width", "FIXED" }, { "Constraint-Height", "FIXED" }, { "BackColor", "Blue" }, { "ForeColor", "White" }, { "children", UXFramework.ChildCollection.CreateChildCollection("children", () => { List <UXFramework.IUXObject> children = new List <UXFramework.IUXObject>(); children.Add(table); return children; }) } }); }); win.Navigate(this.web); }
public UXFramework.UXTree CreateTreeView(uint index, Library.Project p, Library.Node <string, Library.Accessor> projectTree) { Marshalling.MarshallingHash hash; List <UXFramework.UXRow> subtree = new List <UXFramework.UXRow>(); foreach (dynamic node in projectTree.Elements) { hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Width", 20 }, { "Height", 25 }, { "Constraint-Width", "FIXED" }, { "Constraint-Height", "FIXED" }, { "ImageWidth", 16 }, { "ImageHeight", 16 } }); }); UXFramework.UXBox box1 = UXFramework.Creation.CreateBox(null, 16, 16); UXFramework.UXImage im2 = UXFramework.Creation.CreateImage(hash, "image", "left.png"); UXFramework.UXReadOnlyText ro = UXFramework.Creation.CreateReadOnlyText(null, "text", node.NodeValue); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Width", 32 }, { "Height", 25 }, { "Constraint-Width", "FIXED" }, { "Constraint-Height", "FIXED" }, { "align", "left" }, { "Border", "2px solid Blue" } }); }); UXFramework.UXCell cLeaf1 = UXFramework.Creation.CreateCell(hash, box1); UXFramework.UXCell cLeaf3 = UXFramework.Creation.CreateCell(hash, im2); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Height", 25 }, { "Constraint-Height", "FIXED" }, { "align", "left" }, }); }); UXFramework.UXCell cLeaf2 = UXFramework.Creation.CreateCell(hash, ro); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "IsSelectable", true }, { "Background-Selectable", "#0B5395" }, { "Height", 25 }, { "Constraint-Height", "FIXED" }, }); }); UXFramework.UXRow row = UXFramework.Creation.CreateRow(3, hash, cLeaf1, cLeaf2, cLeaf3); row.SetUpdate(x => { Library.Node <string, Library.Accessor> n = x.GetProperty("ProjectRef").Value; n.IsSelected = true; currentNode = n; this.OpenProject(); }); subtree.Add(row); } if (projectTree.IsSelected) { foreach (Library.Node <string, Library.Accessor> sub in projectTree.SubNodes) { hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Width", 20 }, { "Height", 25 }, { "Constraint-Width", "FIXED" }, { "Constraint-Height", "FIXED" }, { "ImageWidth", 16 }, { "ImageHeight", 16 } }); }); UXFramework.UXReadOnlyText ro1 = UXFramework.Creation.CreateReadOnlyText(hash, "text", "+"); UXFramework.UXImage im2 = UXFramework.Creation.CreateImage(hash, "image", "left.png"); UXFramework.UXReadOnlyText ro = UXFramework.Creation.CreateReadOnlyText(null, "text", sub.NodeValue); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Width", 32 }, { "Height", 25 }, { "Constraint-Width", "FIXED" }, { "Constraint-Height", "FIXED" }, { "Border", "2px solid Blue" } }); }); UXFramework.UXCell cNode1 = UXFramework.Creation.CreateCell(hash, ro1); UXFramework.UXCell cNode3 = UXFramework.Creation.CreateCell(hash, im2); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Height", 25 }, { "Constraint-Height", "FIXED" }, { "Disposition", "LEFT_MIDDLE" }, { "Border", "2px solid Blue" } }); }); UXFramework.UXCell cNode2 = UXFramework.Creation.CreateCell(hash, ro); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "IsSelectable", true }, { "Background-Selectable", "#0B5395" }, { "Height", 25 }, { "Constraint-Height", "FIXED" }, }); }); UXFramework.UXRow row = UXFramework.Creation.CreateRow(3, hash, cNode1, cNode2, cNode3); subtree.Add(row); } } hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Width", 20 }, { "Height", 25 }, { "Constraint-Width", "FIXED" }, { "Constraint-Height", "FIXED" }, }); }); UXFramework.UXReadOnlyText ro2; if (projectTree.SubNodes.Count() > 0) { if (projectTree.IsSelected) { ro2 = UXFramework.Creation.CreateReadOnlyText(hash, "text", "-"); } else { ro2 = UXFramework.Creation.CreateReadOnlyText(hash, "text", "+"); } } else { ro2 = UXFramework.Creation.CreateReadOnlyText(hash, "text", " "); } UXFramework.UXImage image2 = UXFramework.Creation.CreateImage(hash, "image", "left.png"); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Width", 32 }, { "Height", 25 }, { "Constraint-Width", "FIXED" }, { "Constraint-Height", "FIXED" }, { "Border", "2px solid Blue" } }); }); UXFramework.UXCell c3 = UXFramework.Creation.CreateCell(hash, ro2); UXFramework.UXCell c4 = UXFramework.Creation.CreateCell(hash, image2); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Height", 25 }, { "Constraint-Height", "FIXED" }, }); }); UXFramework.UXReadOnlyText roText = UXFramework.Creation.CreateReadOnlyText(hash, "text", projectTree.NodeValue); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Height", 25 }, { "Constraint-Height", "FIXED" }, { "Border", "2px solid Blue" }, { "Disposition", "LEFT_MIDDLE" }, }); }); UXFramework.UXCell c5 = UXFramework.Creation.CreateCell(hash, roText); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Id", "row" + index.ToString() }, { "IsSelectable", true }, { "IsClickable", true }, { "ProjectRef", projectTree }, { "Background-Selectable", "#0B5395" }, { "Background-Clickable", "#C8E3FB" }, { "Height", 25 }, { "Constraint-Height", "FIXED" }, { "Disposition", "LEFT_TOP" }, { "align", "left" }, { "valign", "top" } }); }); UXFramework.UXRow first = UXFramework.Creation.CreateRow(3, hash, c3, c5, c4); hash = Marshalling.MarshallingHash.CreateMarshalling("hash", () => { return(new Dictionary <string, dynamic>() { { "Disposition", "LEFT_TOP" }, { "align", "left" }, { "valign", "top" }, { "Width", 220 }, { "Constraint-Width", "FIXED" }, { "ColumnCount", 3 }, { "LineCount", subtree.Count() + 1 }, }); }); UXFramework.UXTree tree = UXFramework.Creation.CreateTree(hash, "tree", first, subtree.ToArray()); return(tree); }