Example #1
0
        /// <summary>
        /// Output areas
        /// </summary>
        /// <returns>output</returns>
        public StringBuilder OutputAreas()
        {
            StringBuilder output = new StringBuilder();

            UXFramework.UXRow[] rows = new UXFramework.UXRow[this.Horizontally.Count()];
            output.Append("<table>");
            foreach (MasterObject ho in this.Horizontally)
            {
                output.AppendFormat("<tr rowspan='{0}'>", ho.LineCount);
                foreach (MasterObject vo in ho.Vertically)
                {
                    output.AppendFormat("<td colspan='{0}'>", vo.ColumnCount);
                    foreach (HTMLObject obj in this.Objects)
                    {
                        if (obj.HookContainer == vo.Container)
                        {
                            output.Append(obj.Output().ToString());
                        }
                    }
                    foreach (HTMLObject obj in vo.Objects)
                    {
                        if (obj.HookContainer == vo.Container)
                        {
                            output.Append(obj.Output().ToString());
                        }
                    }
                    output.Append("</td>");
                }
                output.Append("</tr>");
            }
            output.Append("</table>");
            return(output);
        }
        public static UXFramework.UXRow MakeUXProjectItems(HashConverter element)
        {
            uint index = 0;
            List <UXFramework.UXCell> cells = new List <UXFramework.UXCell>();

            foreach (string s in element.HashKeys)
            {
                dynamic d = element.Get(s).Value;
                cells.Add(UXFramework.UXCell.CreateUXCell(index.ToString(), () =>
                {
                    return(new Dictionary <string, dynamic>()
                    {
                        { "Border", "2px solid Blue" },
                        { s, d },
                        { "children", UXFramework.Creation.CreateChildren(UXFramework.Creation.CreateReadOnlyText(null, "text", d.ToString())) }
                    });
                }));
                ++index;
            }
            UXFramework.UXRow row = UXFramework.Creation.CreateRow(Convert.ToUInt32(cells.Count()), null, cells.ToArray());
            row.Add(() =>
            {
                return(new Dictionary <string, dynamic>()
                {
                    { "BackColor", "#0B5395" },
                    { "IsSelectable", true },
                    { "Background-Selectable", "#1B63A5" },
                    { "IsClickable", true },
                    { "Background-Clickable", "#D9F4FB" },
                    { "FileName", element.Get("Nom du projet").Value + ".bin" }
                });
            });
            return(row);
        }
        public static UXFramework.UXRow MakeUXHeaderProjectItems(HashConverter element)
        {
            uint index = 0;
            List <UXFramework.UXCell> cells = new List <UXFramework.UXCell>();

            foreach (string s in element.HashKeys)
            {
                dynamic d = s;
                cells.Add(UXFramework.UXCell.CreateUXCell(index.ToString(), () =>
                {
                    return(new Dictionary <string, dynamic>()
                    {
                        { "Border", "2px solid Blue" },
                        { "headerName", s },
                        { "children", UXFramework.Creation.CreateChildren(UXFramework.Creation.CreateReadOnlyText(null, "text", s)) }
                    });
                }));
                ++index;
            }
            UXFramework.UXRow row = UXFramework.Creation.CreateRow(Convert.ToUInt32(cells.Count()), null, cells.ToArray());
            row.Add(() =>
            {
                return(new Dictionary <string, dynamic>()
                {
                    { "BackColor", "#1B63A5" },
                });
            });
            return(row);
        }
        public static void SelectProject(WebBrowser browser)
        {
            DirectoryInfo di = new DirectoryInfo(CommonDirectories.ConfigDirectories.GetDocumentsFolder());

            UXFramework.UXTable table = LibraryConverter.ListConverter.MakeUXProjectFiles(di);
            foreach (UXFramework.UXRow row in table.Children)
            {
                row.SetUpdate(x =>
                {
                    UXFramework.UXRow r = x as UXFramework.UXRow;
                    Project p           = r.Get("project").Value as Library.Project;
                    LibraryConverter.ListConverter.MakeUXhierarchyProject(p, p.Hierarchy);
                });
            }
            UXFramework.UXWindow win = UXFramework.Creation.CreateWindow(null, 1320, 700, table);
            win.Add(() =>
            {
                return(new Dictionary <string, dynamic>()
                {
                    { "BackColor", "Blue" },
                    { "ForeColor", "White" }
                });
            });

            win.Navigate(browser);
        }
        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);
        }
Example #6
0
        /// <summary>
        /// Export objects
        /// Create a table with all objects information
        /// </summary>
        /// <returns>ux table</returns>
        public UXFramework.UXTable ExportObjectsToTable()
        {
            UXFramework.UXRow[] rows = new UXFramework.UXRow[this.Objects.Count()];
            uint index = 0;

            foreach (HTMLObject h in this.Objects)
            {
                UXFramework.UXReadOnlyText text = UXFramework.Creation.CreateReadOnlyText(null, "HtmlObject." + index.ToString(), h.ToString());
                UXFramework.UXCell         cell = UXFramework.Creation.CreateCell(null, text);
                rows[index] = UXFramework.Creation.CreateRow(1, null, cell);
                ++index;
            }
            return(UXFramework.Creation.CreateTable("Objects", 1, Convert.ToUInt32(this.Objects.Count()), null, rows));
        }
Example #7
0
        /// <summary>
        /// List of each area
        /// Creates a table with all horizontally and vertically
        /// </summary>
        /// <returns>ux table</returns>
        public UXFramework.UXTable ExportAreasToTable()
        {
            UXFramework.UXRow[] rows = new UXFramework.UXRow[this.Horizontally.Count()];
            uint indexHorizontally   = 0;

            foreach (MasterObject ho in this.Horizontally)
            {
                UXFramework.UXCell[] cells = new UXFramework.UXCell[ho.Vertically.Count()];
                uint indexVertically       = 0;
                foreach (MasterObject vo in ho.Vertically)
                {
                    UXFramework.UXReadOnlyText text = UXFramework.Creation.CreateReadOnlyText(null, "obj." + indexHorizontally.ToString() + "." + indexVertically.ToString(), vo.ToString());
                    cells[indexVertically] = UXFramework.Creation.CreateCell(null, text);
                    ++indexVertically;
                }
                rows[indexHorizontally] = UXFramework.Creation.CreateRow(Convert.ToUInt32(cells.Count()), null, cells);
            }
            return(UXFramework.Creation.CreateTable("Areas", 1, Convert.ToUInt32(rows.Count()), null, rows));
        }
        public static UXFramework.UXTable MakeUXProjectFiles(DirectoryInfo di)
        {
            ListConverter            list = ProjectFiles(di);
            List <UXFramework.UXRow> rows = new List <UXFramework.UXRow>();

            UXFramework.UXRow header = HashConverter.MakeUXHeaderProjectItems(list[0] as HashConverter);
            rows.Add(header);
            uint index = 0;

            foreach (HashConverter hash in list)
            {
                UXFramework.UXRow row = HashConverter.MakeUXProjectItems(hash);
                row.Add(() => {
                    return(new Dictionary <string, dynamic>()
                    {
                        { "Id", index.ToString() }
                    });
                });
                rows.Add(row);
                ++index;
            }
            return(UXFramework.Creation.CreateTable("table", Convert.ToUInt32(list[0].Values.Count()), Convert.ToUInt32(list.Count), null, rows.ToArray()));
        }
        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", "&nbsp;");
            }
            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);
        }