public IGMN(Vector maxMin) { this.initialGauss = maxMin; this.initialGauss.Multiply(INITIAL_VARIANCE); cortical = new List<IGMNData>(); xtree = new XTree<IGMNData>(); }
public ActionResult Diff(string sourceXml, string targetXml) { try { var doc1 = new XmlDocument(); doc1.LoadXml(sourceXml); var doc2 = new XmlDocument(); doc2.LoadXml(targetXml); var tree1 = new XTree(doc1); var tree2 = new XTree(doc2); XDiff.Diff(tree1, tree2); var writer = new XdtDiffWriter(); var patch = writer.GetDiff(tree2); return Content(Beautify(patch), "text/xml"); } catch (Exception e) { return ErrorXml(e.Message); } }
public override void WriteDiff(XTree tree, string file) { using (var writer = XmlWriter.Create(file, new XmlWriterSettings() { Indent = true })) { writer.WriteStartDocument(); WriteElement(tree.Root, writer); writer.WriteEndDocument(); } }
public void AttributeMarkedChanged() { var doc1 = new XmlDocument(); doc1.LoadXml(@" <root> <child1 name1='child1' type1='elem1'>child1</child1> <child2 name1='child2' type1='elem2'>child2</child2> </root>" ); // reordered xml but same values var doc2 = new XmlDocument(); doc2.LoadXml(@" <root> <child1 type1='elem1' name1='DIFFERENT'>child1</child1> <child2 name1='child2' type1='elem2'>child2</child2> </root>" ); var tree1 = new XTree(doc1); var tree2 = new XTree(doc2); XDiff.Diff(tree1, tree2); Assert.AreEqual(tree1.Root.Match, MatchType.Change); Assert.AreEqual(tree2.Root.Match, MatchType.Change); Assert.AreEqual(tree1.Root.Children.Length, 2); Assert.AreEqual(tree2.Root.Children.Length, 2); Assert.AreEqual(tree1.Root.Elements.Length, 2); Assert.AreEqual(tree2.Root.Elements.Length, 2); Assert.AreEqual(tree1.Root.Elements[0].Match, MatchType.Change); Assert.AreEqual(tree2.Root.Elements[0].Match, MatchType.Change); Assert.AreEqual(tree1.Root.Elements[1].Match, MatchType.Match); Assert.AreEqual(tree2.Root.Elements[1].Match, MatchType.Match); Assert.AreEqual(tree1.Root.Elements[0].Attributes.Length, 2); Assert.AreEqual(tree2.Root.Elements[0].Attributes.Length, 2); Assert.AreEqual(tree1.Root.Elements[0].Texts.Length, 1); Assert.AreEqual(tree2.Root.Elements[0].Texts.Length, 1); Assert.AreEqual(tree1.Root.Elements[0].Texts[0].Match, MatchType.Match); Assert.AreEqual(tree2.Root.Elements[0].Texts[0].Match, MatchType.Match); Assert.AreEqual(tree1.Root.Elements[0].Attributes[0].Match, MatchType.Change); Assert.AreEqual(tree2.Root.Elements[0].Attributes[0].Match, MatchType.Match); Assert.AreEqual(tree1.Root.Elements[0].Attributes[1].Match, MatchType.Match); Assert.AreEqual(tree2.Root.Elements[0].Attributes[1].Match, MatchType.Change); Assert.AreEqual(tree1.Root.Elements[0].Attributes[0].Matching, tree2.Root.Elements[0].Attributes[1]); }
/// <summary> /// Get the diff patch for the tree /// </summary> public XmlDocument GetDiff(XTree tree) { var doc = new XmlDocument(); var root = WriteElement(tree.Root.Matching, tree.Root, doc, string.Empty); var attr = doc.CreateAttribute(XmlNamespace, XdtPrefix, XmlNamespaceUri); attr.Value = XdtNamespace; root.Attributes.Append(attr); return doc; }
/// <summary> /// Get the diff patch for the tree /// </summary> public XmlDocument GetDiff(XTree tree) { var doc = new XmlDocument(); var root = WriteElement(tree.Root.Matching, tree.Root, doc, string.Empty, 1); var attr = doc.CreateAttribute(XmlNamespace, XdtPrefix, XmlNamespaceUri); attr.Value = XdtNamespace; root.Attributes.Append(attr); return(doc); }
public override void AssignChildComponents(XComponent parent, ref List <uint> children) { if (children.Count == 1) { XTree xparent = (XTree)parent; XTreeModel child = (XTreeModel)X.Tools.GetXComponentByID(children[0]); if (child.GetType() == typeof(XTreeModel)) { xparent.model_editor = child; xparent.Load(X.Content); } } }
protected override void InitDict() { var tree = new XTree(); tree.LoadList += tree_LoadList; tree.InitTree(""); var list = tree.OutTree(); list.Insert(0, new item() { id = "0", name = "无" }); dict.Add("dict", list); }
private static List <String> CompileXmlChanges(int fileVersion, string origPath, string newPath) { XmlDocument origDoc = new XmlDocument(); FileStream origFs = new FileStream(origPath, FileMode.Open); origDoc.Load(origFs); origFs.Dispose(); XmlDocument newDoc = new XmlDocument(); FileStream newFs = new FileStream(newPath, FileMode.Open); newDoc.Load(newFs); newFs.Dispose(); var tree1 = new XTree(origDoc); var tree2 = new XTree(newDoc); XDiff.Diff(tree1, tree2); var res = new List <String>(); List <string> missingFromNew = CompileXmlChangesForNode(Enumerable.Empty <string>().ToImmutableHashSet(), "", "", tree1.Root); if (missingFromNew.Any()) { res.Add("Missing nodes:"); res.AddRange(missingFromNew); } ImmutableHashSet <string> canIgnore = AddedFields.Where(kv => kv.Key >= fileVersion).SelectMany(kv => kv.Value).ToImmutableHashSet(); List <string> extra = CompileXmlChangesForNode(canIgnore, "", "", tree2.Root); if (extra.Any()) { res.Add("Additional nodes:"); res.AddRange(extra); } return(res); }
private XmlDocument GetPatch(string sourceXml, string targetXml) { var doc1 = new XmlDocument(); doc1.LoadXml(sourceXml); // reordered xml but same values var doc2 = new XmlDocument(); doc2.LoadXml(targetXml); var tree1 = new XTree(doc1); var tree2 = new XTree(doc2); XDiff.Diff(tree1, tree2); var writer = new XdtDiffWriter(); return(writer.GetDiff(tree2)); }
public override void WriteToXML(System.Xml.XmlWriter writer, object obj) { XTree actor = (XTree)obj; writer.WriteStartElement("sceneitem"); writer.WriteAttributeString("Type", actor.GetType().ToString()); writer.WriteAttributeString("ComponentID", actor.ComponentID.ToString()); writer.WriteAttributeString("AutoDraw", actor.AutoDraw.ToString()); writer.WriteAttributeString("Name", actor.Name); writer.WriteAttributeString("DrawOrder", actor.DrawOrder.ToString()); writer.WriteAttributeString("Immovable", actor.Immovable.ToString()); writer.WriteAttributeString("Mass", actor.Mass.ToString()); writer.WriteAttributeString("model_editor", actor.model_editor.ComponentID.ToString()); writer.WriteAttributeString("Rotation", actor.Rotation.ToString()); writer.WriteAttributeString("Translation", actor.Translation.ToString()); writer.WriteAttributeString("Scale", actor.Scale.ToString()); writer.WriteAttributeString("Velocity", actor.Velocity.ToString()); writer.WriteAttributeString("CollisionEnabled", actor.CollisionEnabled.ToString()); writer.WriteAttributeString("RenderLeaves", actor.RenderLeaves.ToString()); writer.WriteEndElement(); }
protected override XResp Execute() { var r = new Resp_List(); var tree = new XTree(); tree.LoadList += tree_LoadList; tree.InitTree("", 5); var data = tree.OutTree(); if (!string.IsNullOrEmpty(key)) { r.items = data.Where(o => o.name.Contains(key)).ToList(); } else { r.items = data; } return(r); }
unsafe public void Create() { xc.XInitXCGUI(""); int hWindow = XWnd.Create(0, 0, 500, 300, "xcgui", 0, 15); int hTree = XTree.Create(0, 0, 200, 300, hWindow); XTree.SetItemTemplateXML(hTree, "..\\..\\Tree_Item.xml"); int hAdapter = XAdapterTree.Create(); XTree.BindAdapter(hTree, hAdapter); XAdapterTree.AddColumn(hAdapter, "name"); int nID = XAdapterTree.InsertItemText(hAdapter, "1", xcConst.XC_ID_ROOT, xcConst.XC_ID_LAST); XAdapterTree.InsertItemText(hAdapter, "1.1", nID, xcConst.XC_ID_LAST); XWnd.ShowWindow(hWindow, 5); xc.XRunXCGUI(); xc.XExitXCGUI(); }
public void DifferentXmlTextsAreDifferent() { var doc1 = new XmlDocument(); doc1.LoadXml(@" <root> <child1 name1='child1' type1='elem1'>child1</child1> <child2 name2='child2' type2='elem2'>child2</child2> </root>" ); var doc2 = new XmlDocument(); doc2.LoadXml(@" <root> <child1 name1='child1' type1='elem1'>child1</child1> <child2 name2='child2' type2='elem2'>DIFFERENT</child2> </root>" ); var tree1 = new XTree(doc1); var tree2 = new XTree(doc2); Assert.IsFalse(Enumerable.SequenceEqual(tree1.Root.Hash, tree2.Root.Hash)); }
void Awake() { _xTree = new XTree(); var list = new List <IPositionComponent>(Xpoints.Count); foreach (var point in Xpoints) { var posComponent = new ComponentTestImpimentation(new System.Numerics.Vector3(point, 0, 0)); list.Add(posComponent); } _xTree.GenerateTree(list); // _tree = new KdTree(); // points.Add(playerPos); // // var list = new List<IPositionComponent>(points.Count); // foreach (var point in points) // { // var posComponent = new ComponentTestImpimentation(point.ConvertToSystemNumericsVector3()); // list.Add(posComponent); // } // // _tree.GenerateTree(list); }
public abstract void WriteDiff(XTree tree, string file);
/// <summary> /// Write the diff / patch to the given file /// </summary> public override void WriteDiff(XTree tree, string file) { var doc = GetDiff(tree); doc.Save(file); }
private void AssertCanTransform(string sourceXml, string targetXml) { var doc1 = new XmlDocument(); doc1.LoadXml(sourceXml); // reordered xml but same values var doc2 = new XmlDocument(); doc2.LoadXml(targetXml); var tree1 = new XTree(doc1); var tree2 = new XTree(doc2); XDiff.Diff(tree1, tree2); var writer = new XdtDiffWriter(); var patch = writer.GetDiff(tree2); var transformed = Transform(doc1, patch); var transformedTree = new XTree(transformed); Assert.IsFalse(Enumerable.SequenceEqual(tree1.Root.Hash, tree2.Root.Hash)); Assert.IsTrue(Enumerable.SequenceEqual(transformedTree.Root.Hash, tree2.Root.Hash)); }
/// <summary> /// Write the diff / patch to the given file /// </summary> public override void WriteDiff(XTree tree, string file) { var doc = GetDiff(tree); doc.Save(new FileStream(file, FileMode.Create)); }
private void InitMainMenu() { try { navBarNavigate.BeginUpdate(); navBarNavigate.PaintStyleKind = NavBarViewKind.NavigationPane; navBarNavigate.Groups.Clear(); navBarNavigate.Items.Clear(); var navBarGroupBusiness = new NavBarGroup() { Name = "navBarGroupBusiness", Caption = "Business", GroupStyle = NavBarGroupStyle.ControlContainer, SmallImage = ImageResource.menu_business_16x16, LargeImage = ImageResource.menu_business_32x32 }; var navBarGroupSystem = new NavBarGroup() { Name = "navBarGroupSystem", Caption = "System", SmallImage = ImageResource.menu_system_16x16, LargeImage = ImageResource.menu_system_32x32 }; navBarNavigate.OptionsNavPane.ShowExpandButton = false; //navBarNavigate.Groups.AddRange(new NavBarGroup[] { navBarGroupBusiness, navBarGroupAnalysis, navBarGroupSystem }); navBarNavigate.Groups.AddRange(new NavBarGroup[] { navBarGroupBusiness, navBarGroupSystem }); navBarGroupBusiness.ControlContainer = new NavBarGroupControlContainer(); mainMenu = new XTree() { Name = "mainMenu", Dock = DockStyle.Fill }; if (mainMenu != null) { navBarGroupBusiness.ControlContainer.Controls.Add(mainMenu); mainMenu.OptionsBehavior.PopulateServiceColumns = true; mainMenu.OptionsBehavior.AllowExpandOnDblClick = true; mainMenu.OptionsView.ShowColumns = false; mainMenu.OptionsView.ShowIndicator = false; mainMenu.OptionsView.ShowHorzLines = false; mainMenu.OptionsView.ShowVertLines = false; mainMenu.OptionsView.AutoWidth = true; mainMenu.OptionsView.EnableAppearanceEvenRow = false; mainMenu.OptionsView.EnableAppearanceOddRow = false; imageCollection.Clear(); imageCollection.AddImage(ImageResource.tree_group_collapse_16x16); imageCollection.AddImage(ImageResource.tree_group_expand_16x16); imageCollection.AddImage(ImageResource.tree_item_normal3_16x16); imageCollection.AddImage(ImageResource.tree_item_hot3_16x16); imageCollection.AddImage(ImageResource.tree_item_not3_16x16); mainMenu.StateImageList = imageCollection; mainMenu.GetStateImage += delegate(object sender, GetStateImageEventArgs e) { if (e.Node.HasChildren) { if (e.Node.Expanded) { e.NodeImageIndex = 1; } else { e.NodeImageIndex = 0; } } else { if (e.Node.GetValue("VIEW_YN").ToStringNullToEmpty().Equals("N")) { e.NodeImageIndex = 4; } else { if (e.Node.GetValue("BOOKMARK_YN").ToStringNullToEmpty().Equals("Y")) { e.NodeImageIndex = 3; } else { e.NodeImageIndex = 2; } } } }; mainMenu.GetSelectImage += delegate(object sender, GetSelectImageEventArgs e) { if (e.Node.HasChildren) { e.NodeImageIndex = 1; } }; mainMenu.MouseDoubleClick += delegate(object sender, MouseEventArgs e) { try { if (e.Button == MouseButtons.Left && e.Clicks == 2) { var tree = sender as XTree; var info = tree.CalcHitInfo(tree.PointToClient(MousePosition)); if (info.HitInfoType == HitInfoType.Cell && !info.Node.HasChildren) { OpenForm(new MenuData() { MENU_ID = info.Node["MENU_ID"].ToIntegerNullToZero(), MENU_NAME = info.Node["MENU_NAME"].ToStringNullToEmpty(), CAPTION = info.Node["MENU_NAME"].ToStringNullToEmpty(), IMAGE = imageCollection.Images[2], ASSEMBLY = info.Node["ASSEMBLY"].ToStringNullToEmpty(), NAMESPACE = info.Node["NAMESPACE"].ToStringNullToEmpty(), INSTANCE = info.Node["INSTANCE"].ToStringNullToEmpty(), FORM_TYPE = info.Node["FORM_TYPE"].ToStringNullToEmpty(), VIEW_YN = info.Node["VIEW_YN"].ToStringNullToEmpty(), EDIT_YN = info.Node["EDIT_YN"].ToStringNullToEmpty() }); } } } catch (Exception ex) { MsgBox.Show(ex); } }; mainMenu.MouseClick += delegate(object sender, MouseEventArgs e) { try { var tree = sender as XTree; var info = tree.CalcHitInfo(tree.PointToClient(MousePosition)); if (e.Button == MouseButtons.Right && ModifierKeys == Keys.None && tree.State == TreeListState.Regular) { if (info.HitInfoType == HitInfoType.Cell && info.Node.HasChildren == false) { barPopupButtonBookmark.Visibility = BarItemVisibility.Always; } else { barPopupButtonBookmark.Visibility = BarItemVisibility.Never; } popupMenuOfMainMenu.ShowPopup(MousePosition); } } catch (Exception ex) { MsgBox.Show(ex); } }; mainMenu.AddColumn("MENU_NAME"); mainMenu.AddColumn("MENU_ID", false); mainMenu.AddColumn("PARENT_ID", false); mainMenu.AddColumn("HIER_ID", false); mainMenu.AddColumn("ASSEMBLY", false); mainMenu.AddColumn("NAMESPACE", false); mainMenu.AddColumn("INSTANCE", false); mainMenu.AddColumn("CHILD_COUNT", false); mainMenu.AddColumn("BOOKMARK_YN", false); mainMenu.AddColumn("FORM_TYPE", false); mainMenu.AddColumn("VIEW_YN", false); mainMenu.AddColumn("EDIT_YN", false); mainMenu.ParentFieldName = "PARENT_ID"; mainMenu.KeyFieldName = "MENU_ID"; mainMenu.RootValue = "MENU_GROUP_BIZ"; LoadMainMenu(); LoadSystemMenu(); } navBarNavigate.EndUpdate(); } catch (Exception ex) { MsgBox.Show(ex); } }
private XmlDocument GetPatch(string sourceXml, string targetXml) { var doc1 = new XmlDocument(); doc1.LoadXml(sourceXml); // reordered xml but same values var doc2 = new XmlDocument(); doc2.LoadXml(targetXml); var tree1 = new XTree(doc1); var tree2 = new XTree(doc2); XDiff.Diff(tree1, tree2); var writer = new XdtDiffWriter(); return writer.GetDiff(tree2); }
public void IsomorphicXmlAreEqual() { var doc1 = new XmlDocument(); doc1.LoadXml(@" <root> <child1 name1='child1' type1='elem1'>child1</child1> <child2 name2='child2' type2='elem2'>child2</child2> </root>" ); // reordered xml but same values var doc2 = new XmlDocument(); doc2.LoadXml(@" <root> <child2 type2='elem2' name2='child2'>child2</child2> <child1 type1='elem1' name1='child1'>child1</child1> </root>" ); var tree1 = new XTree(doc1); var tree2 = new XTree(doc2); Assert.IsTrue(Enumerable.SequenceEqual(tree1.Root.Hash, tree2.Root.Hash)); }
public void SingleElement() { var doc1 = new XmlDocument(); doc1.LoadXml("<root></root>"); var tree1 = new XTree(doc1); Assert.AreEqual(tree1.Root.Children.Length, 0); }
public Form1() { InitializeComponent(); tree = new XTree<SimpleData>(); }